2010-09-26 6 views
4

Je suis au courant de ctor, cctor, propriété/préfixe indexeur: get_, set_, préfixe de gestion des événements: add_, remove_. J'ai vu un préfixe raise_ une ou deux fois (ne me souviens pas où).Vous recherchez la liste exacte des MethodAttributes.SpecialName possible

Une liste définitive existe-t-elle au niveau .Net (spécification ECMA)? Si oui où est-ce?

Est-ce une «liste ouverte» afin que tout (nouveau) langage puisse les définir pour ses besoins (futurs)?

Répondre

1

Les opérateurs définis par l'utilisateur seraient un autre exemple. Comme System.String.op_Equality (opérateur ==):

.method public hidebysig specialname static bool op_Equality(string a, string b) cil managed 
{ 
    .maxstack 8 
    L_0000: ldarg.0 
    L_0001: ldarg.1 
    L_0002: call bool System.String::Equals(string, string) 
    L_0007: ret 
} 

Il n'y a pas liste exhaustive, les implémentations de langage sont libres d'utiliser l'attribut pour cacher leur colle. Vous avez probablement vu le préfixe raise_ sur le code généré par le compilateur VB.NET en utilisant l'accesseur RaiseEvent par exemple.

Questions connexes