CA1804 : Supprimez les variables locales inutilisées
TypeName |
RemoveUnusedLocals |
CheckId |
CA1804 |
Catégorie |
Microsoft.Performance |
Modification avec rupture |
Modification sans rupture |
Cause
Une méthode déclare une variable locale, mais n'utilise pas la variable sauf éventuellement en tant que destinataire d'une instruction d'assignation.Pour l'analyse par cette règle, l'assembly testé doit être construit avec des informations de débogage et le fichier de base de données de programme (.pdb) associé doit être disponible.
Description de la règle
Les variables locales inutilisées et les assignations inutiles augmentent la taille d'un assembly et font baisser les performances.
Comment corriger les violations
Pour corriger une violation de cette règle, supprimez ou utilisez la variable locale.Remarquez que le compilateur C# intégré à .NET Framework 2.0 supprime ces variables locales inutiles lorsque l'option optimize est activée.
Quand supprimer les avertissements
Supprimez un avertissement de cette règle si la variable était émise par un compilateur.Par mesure de sécurité, il est également recommandé de supprimer un avertissement de cette règle, voire de désactiver la règle, si les performances et la maintenance du code ne constituent pas des problèmes de premier plan.
Exemple
L'exemple suivant présente plusieurs variables locales inutilisées.
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();
}
}
}
Règles connexes
CA1809 : Évitez le surplus de variables locales
CA1811 : Évitez le recours à du code privé non appelé