Freigeben über


CA1804: Nicht verwendete lokale Variablen entfernen

TypeName

RemoveUnusedLocals

CheckId

CA1804

Kategorie (Category)

Microsoft.Performance

Unterbrechende Änderung

Nicht unterbrechend

Ursache

In einer Methode wird eine lokale Variable deklariert, aber höchstens als Empfänger einer Zuweisungsanweisung verwendet.Damit eine Analyse gemäß dieser Regel möglich ist, muss die getestete Assembly mit Debuginformationen erstellt werden, und die zugehörige Programmdatenbankdatei (PDB) muss verfügbar sein.

Regelbeschreibung

Nicht verwendete lokale Variablen und unnötige Zuweisungen vergrößern die Assembly unnötig und beeinträchtigen die Leistung.

Behandeln von Verstößen

Um einen Verstoß gegen diese Regel zu beheben, entfernen oder verwenden Sie die lokale Variable.Beachten Sie, dass der C#-Compiler (gehört zum Lieferumfang von .NET Framework 2,0) nicht verwendete lokale Variablen entfernt, wenn die optimize-Option aktiviert ist.

Wann sollten Warnungen unterdrückt werden?

Unterdrücken Sie eine Warnung dieser Regel, wenn die Variable vom Compiler ausgegeben wurde.Eine Warnung dieser Regel kann ebenso gefahrlos unterdrückt werden, bzw. die Regel kann deaktiviert werden, wenn das Leistungsverhalten und die Codepflege nicht im Vordergrund stehen.

Beispiel

Im folgenden Beispiel werden mehrere nicht verwendete lokale Variablen veranschaulicht.

Imports System
Imports System.Windows.Forms

Namespace PerformanceLibrary

   Public Class UnusedLocals

      Sub SomeMethod()

         Dim unusedInteger As Integer 
         Dim unusedString As String = "hello" 
         Dim unusedArray As String() = Environment.GetLogicalDrives()
         Dim unusedButton As New Button()

      End Sub 

   End Class 

End Namespace
using System;
using System.Windows.Forms;

namespace PerformanceLibrary
{
   public class UnusedLocals
   {
      public void SomeMethod()
      {
         int unusedInteger;
         string unusedString = "hello";
         string[] unusedArray = Environment.GetLogicalDrives();
         Button unusedButton = new Button();
      }
   }
}

Verwandte Regeln

CA1809: Übermäßige lokale Variablen vermeiden

CA1811: Nicht aufgerufenen privaten Code vermeiden

CA1812: Nicht instanziierte interne Klassen vermeiden

CA1801: Nicht verwendete Parameter überprüfen