Balises Symbols et Symbol

Les informations de débogage relatives à un programme compilé sont stockées dans le fichier de base de données de programme (.pdb) comme symboles accessibles à l’aide des API du SDK Dia (Debug Interface Access). Tous les symboles ont une propriété IDiaSymbol::get_symTag et IDiaSymbol::get_symIndexId. La propriété symTag indique le type de symbole comme défini par l’énumération SymTagEnum. La propriété symIndexId est une valeur DWORD qui contient l’identificateur unique pour chaque instance d’un symbole.

Les symboles ont également des propriétés qui peuvent spécifier des informations supplémentaires sur le symbole ainsi que des références à d’autres symboles, le plus souvent IDiaSymbol::get_lexicalParent ou IDiaSymbol::get_classParent. Quand vous interrogez une propriété qui contient une référence, la référence est retournée comme objet IDiaSymbol. Ces propriétés sont toujours associées à une autre propriété portant le même nom, mais avec le suffixe « Id », par exemple IDiaSymbol::get_lexicalParentId et IDiaSymbol::get_classParentId. Les tableaux dans Emplacements des symboles, Hiérarchie lexicale des types de symboles et Hiérarchie de classes des types de symboles décrivent les propriétés de chacun des différents types de symboles. Ces propriétés peuvent avoir des informations pertinentes sur d’autres symboles ou des références à d’autres symboles. Étant donné que les propriétés *Id sont simplement des identificateurs numériques ordinaux des propriétés associées, elles ne seront pas abordées par la suite. Il y est fait référence uniquement à des fins de clarification des paramètres.

Quand vous essayez d’accéder à la propriété, si aucune erreur ne se produit et qu’une valeur a été attribuée à la propriété du symbole, la méthode « get » de la propriété retourne S_OK. Une valeur de retour S_FALSE indique que la propriété n’est pas valide pour le symbole actuel.

Dans cette section

Emplacements des symboles

Décrit les différents types d’emplacements qu’un symbole peut avoir.

Hiérarchie lexicale des types de symboles

Décrit les types de symboles qui forment des hiérarchies lexicales comme les fichiers, les modules et les fonctions.

Hiérarchie de classes des types de symboles

Décrit les types de symboles qui correspondent à différents éléments de langage comme les classes, les tableaux et les types de retour de fonction.

Voir aussi