Maison > développement back-end > C++ > Quels sont les « noms magiques » générés par le compilateur C# et comment PostSharp 2.0 les utilise-t-il ?

Quels sont les « noms magiques » générés par le compilateur C# et comment PostSharp 2.0 les utilise-t-il ?

Patricia Arquette
Libérer: 2025-01-13 06:24:45
original
219 Les gens l'ont consulté

What are the

Décodage des noms cachés du débogueur Visual Studio

Le compilateur C# de Visual Studio utilise un système de noms internes uniques pour les types, les méthodes et les variables, noms non visibles pour le développeur. Ces « noms magiques », révélés grâce à des outils comme Reflector, remplissent des fonctions essentielles dans la gestion des variables locales optimisées, des emplacements de stockage temporaires et des éléments générés par le compilateur.

Documentation limitée et détails de mise en œuvre

Il est important de noter : ces schémas de dénomination ne sont pas officiellement documentés et sont sujets à modification sans préavis. Cependant, les modèles suivants ont été observés :

Conventions de dénomination des variables locales :

  • Variables optimisées : __Deleted$
  • Emplacements de variables temporaires : CS$X$Y (où X représente le type de variable temporaire, et Y son index).

Noms des éléments générés par le compilateur :

  • État de l'itérateur : P<name>C__state$S
  • Valeur actuelle de l'itérateur : P<name>C__current$S
  • Fermetures de méthodes anonymes : P<name>C__AnonymousMethodDelegate$S
  • Classes de méthodes anonymes : P<name>C__DisplayClass$S
  • Champs de sauvegarde de propriété automatique : P<name>C__BackingField$S

Le fichier GeneratedNames.cs

Pour les informations les plus récentes sur ces conventions de dénomination, consultez le fichier GeneratedNames.cs dans le code source du compilateur C#.

PostSharp 2.0 et l'importance de comprendre ces noms

Une compréhension approfondie de ces conventions de dénomination internes est essentielle pour des outils comme PostSharp 2.0. En adhérant à ces conventions, PostSharp garantit une expérience de débogage fluide et cohérente au sein de Visual Studio.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal