SymTagEnum

Spécifie le type du symbole.

Syntax

enum SymTagEnum {
    SymTagNull,
    SymTagExe,
    SymTagCompiland,
    SymTagCompilandDetails,
    SymTagCompilandEnv,
    SymTagFunction,
    SymTagBlock,
    SymTagData,
    SymTagAnnotation,
    SymTagLabel,
    SymTagPublicSymbol,
    SymTagUDT,
    SymTagEnum,
    SymTagFunctionType,
    SymTagPointerType,
    SymTagArrayType,
    SymTagBaseType,
    SymTagTypedef,
    SymTagBaseClass,
    SymTagFriend,
    SymTagFunctionArgType,
    SymTagFuncDebugStart,
    SymTagFuncDebugEnd,
    SymTagUsingNamespace,
    SymTagVTableShape,
    SymTagVTable,
    SymTagCustom,
    SymTagThunk,
    SymTagCustomType,
    SymTagManagedType,
    SymTagDimension,
    SymTagCallSite,
    SymTagInlineSite,
    SymTagBaseInterface,
    SymTagVectorType,
    SymTagMatrixType,
    SymTagHLSLType
};

Éléments

Élément Description
SymTagNull Indique que le symbole n’a aucun type.
SymTagExe Indique que le symbole est un fichier .exe.
Il n’y a qu’un SymTagExe seul symbole par magasin de symboles.
Il sert d’étendue globale et n’a pas de parent lexical.
SymTagCompiland Indique le symbole de compilation pour chaque composant compileand du magasin de symboles.
Pour les applications natives, SymTagCompiland les symboles correspondent aux fichiers objet liés à l’image. Pour certaines sortes d’images MSIL (Microsoft Intermediate Language), il y a un compiland par classe.
SymTagCompilandDetails Indique que le symbole contient des attributs étendus de la compilation.
La récupération de ces propriétés peut nécessiter le chargement de symboles de compilation et de compilation.
SymTagCompilandEnv Indique que le symbole est une chaîne d’environnement définie pour la compilation.
SymTagFunction Indique que le symbole est une fonction.
SymTagBlock Indique que le symbole est un bloc imbriqué.
SymTagData Indique que le symbole est des données.
SymTagAnnotation Indique que le symbole est destiné à une annotation de code.
Les enfants de ce symbole sont des chaînes de données constantes (SymTagData, LocIsConstantet DataIsConstant).
La plupart des clients ignorent ce symbole.
SymTagLabel Indique que le symbole est une étiquette.
SymTagPublicSymbol Indique que le symbole est un symbole public. Pour les applications natives,
ce symbole est le symbole externe COFF rencontré lors de la liaison de l’image.
SymTagUDT Indique que le symbole est un type défini par l’utilisateur (structure, classe ou union).
SymTagEnum Indique que le symbole est une énumération.
SymTagFunctionType Indique que le symbole est un type de signature de fonction.
SymTagPointerType Indique que le symbole est un type de pointeur.
SymTagArrayType Indique que le symbole est un type de tableau.
SymTagBaseType Indique que le symbole est un type de base.
SymTagTypedef Indique que le symbole est un typedef alias pour un autre type.
SymTagBaseClass Indique que le symbole est une classe de base d’un type défini par l’utilisateur.
SymTagFriend Indique que le symbole est un ami d’un type défini par l’utilisateur.
SymTagFunctionArgType Indique que le symbole est un argument de fonction.
SymTagFuncDebugStart Indique que le symbole est l’emplacement de fin du code de prologue de la fonction.
SymTagFuncDebugEnd Indique que le symbole est l’emplacement de début du code épilogue de la fonction.
SymTagUsingNamespace Indique que le symbole est un nom d’espace de noms actif dans l’étendue actuelle.
SymTagVTableShape Indique que le symbole est une description de table virtuelle.
SymTagVTable Indique que le symbole est un pointeur de table virtuelle.
SymTagCustom Indique que le symbole est un symbole personnalisé et n’est pas interprété par DIA.
SymTagThunk Indique que le symbole est un thunk utilisé pour partager des données entre le code 16 et 32 bits.
SymTagCustomType Indique que le symbole est un symbole de compilateur personnalisé.
SymTagManagedType Indique que le symbole se trouve dans les métadonnées.
SymTagDimension Indique que le symbole est un tableau multidimensionnel FORTRAN.
SymTagCallSite Indique que le symbole représente le site d’appel.
SymTagInlineSite Indique que le symbole représente le site inline.
SymTagBaseInterface Indique que le symbole est une interface de base.
SymTagVectorType Indique que le symbole est un type de vecteur.
SymTagMatrixType Indique que le symbole est un type de matrice.
SymTagHLSLType Indique que le symbole est un type de langage de nuanceur de haut niveau.

Notes

Dans un fichier de débogage, tous les symboles ont une balise d’identification qui spécifie le type du symbole.

Les valeurs de cette énumération sont retournées par un appel à la méthode IDiaSymbol::get_symTag.

Les valeurs de cette énumération sont passées aux méthodes suivantes pour limiter l’étendue de la recherche à un type de symbole particulier :

Configuration requise

En-tête : cvconst.h

Voir aussi