Udostępnij za pośrednictwem


CA1804: Usuń nieużywane zmienne lokalne

TypeName

RemoveUnusedLocals

CheckId

CA1804

Kategoria

Microsoft.Performance

Zmiana kluczowa

Niekluczowa

Przyczyna

Metoda deklaruje zmienną lokalną, ale nie używa jej, z wyjątkiem ewentualnego adresata instrukcji przypisania.Do analizy przez tę regułę badany zestaw musi być zbudowany z informacjami debugowania i skojarzony plik bazy danych programu (pdb) musi być dostępny.

Opis reguły

Nieużywane zmienne lokalne i niepotrzebne przydziały zwiększają rozmiar zestawu i zmniejszają wydajność.

Jak naprawić naruszenia

Aby naprawić naruszenie tej zasady, usuń lub użyj zmiennej lokalnej.Należy zauważyć, że kompilator C# dołączony do Program .NET Framework 2,0 usuwa zmienne lokalne gdy opcja optimize jest włączona.

Kiedy pominąć ostrzeżenia

Ostrzeżenie od tej reguły można pominąć, jeśli zmienna została wyemitowana przez kompilator.Bezpiecznie jest również pomijać ostrzeżenia od tej reguły lub wyłączyć regułę, jeśli wydajność i konserwacja kodu nie są głównymi obawami.

Przykład

W poniższym przykładzie przedstawiono kilka zmiennych lokalnych.

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();
      }
   }
}

Powiązane reguły

CA1809: Unikaj nadmiernego używania zmiennych lokalnych

CA1811: Unikaj niewywołanego kodu prywatnego

CA1812: Unikaj wewnętrznych klas bez wystąpień

CA1801: Przejrzyj nieużywane parametry