CA1822: Označte členy jako statické
TypeName |
MarkMembersAsStatic |
CheckId |
CA1822 |
Kategorie |
Microsoft.Performance |
Narušující změna |
Nenarušující - Pokud bez ohledu na změnu, kterou provedete, není vně sestavení člen viditelný.Nenarušující - Pokud pouze změníte člen na člen instance s klíčovým slovem this. Narušující - Při změně členu ze členu instance na statický člen, který je viditelný vně sestavení. |
Příčina
Člen, který nemá přístup k datům instance, není označen jako statický (Sdílený v aplikaci Visual Basic).
Popis pravidla
Členy, které nemají přístup k datům instance nebo metodám instance volání mohou být označeny jako statické (Sdílené v aplikaci Visual Basic).Po označení metod jako statických bude kompilátor generovat těmto členům nevirtuální místa volání.Generování nevirtuálních míst volání zabrání kontrole při běhu pro každé volání, které zajišťuje, že je aktuální ukazatel objektu nenulové hodnoty.Tím lze dosáhnout měřitelného zisku výkon pro výkonově citlivý kód.V některých případech představuje selhání přístupu k aktuální instanci objektu otázku správnosti.
Jak vyřešit porušení
Označte člen jako statický (nebo Sdílený v aplikaci Visual Basic) nebo použijte 'this'/'Me' v těle metody, pokud je to vhodné.
Kdy potlačit upozornění
Potlačení upozornění od tohoto pravidla je bezpečné pro dříve dodaný kód, pro který by oprava byla ovlivňující změnou.
Související pravidla
CA1811: Vyhněte se nevolanému místnímu kódu