Partager via


IDebugHostType2 ::GetIntrinsicType, méthode (dbgmodel.h)

La méthode GetIntrinsicType retourne des informations sur le type intrinsèque du type. Deux valeurs sont retournées à partir de cette méthode :

  • Le type intrinsèque indique le type global (par exemple, entier, non signé, virgule flottante) mais pas la taille du type (par exemple : 8 bits, 16 bits, 32 bits, 64 bits)

  • Le type d’opérateur indique comment le type intrinsèque est packé dans une structure VARIANT. Il s’agit d’une constante VT_*.

La combinaison des deux valeurs fournit l’ensemble complet d’informations sur l’intrinsèque.

Syntaxe

HRESULT GetIntrinsicType(
  IntrinsicKind *intrinsicKind,
  VARTYPE       *carrierType
);

Paramètres

intrinsicKind

Le type d’intrinsèque sera retourné ici. Cela indique le type global de l’intrinsèque -- s’il s’agit d’un entier, non signé, à virgule flottante, etc. Elle n’indique pas la taille de l’intrinsèque. Les entiers 8, 16, 32 et 64 bits sont signalés sous forme d’entiers signés.

carrierType

Constante VT_* indiquant la façon dont l’intrinsèque va être emballée dans une structure VARIANT est retournée ici. Cette opération, combinée à la valeur retournée dans l’argument intrinsèqueKind, fournit les informations complètes nécessaires pour comprendre la nature de l’intrinsèque.

Valeur de retour

Cette méthode retourne HRESULT qui indique la réussite ou l’échec.

Remarques

exemple de code

ComPtr<IDebugHostType> spType; /* get a type (see FindTypeByName) for something 
                                  which is intrinsic (e.g.: an enum or ordinal) */

IntrinsicKind ik;
VARTYPE carrier;
if (SUCCEEDED(spType->GetIntrinsicType(&ik, &carrier)))
{
    // The type is defined by ik/carrier:
    //    e.g.: the C type "char" would be defined as IntrinsicChar / VT_I1.
    //    e.g.: the C type "wchar_t" would be defined as IntrinsicWChar / VT_UI2.
    //    e.g.: the C type "unsigned short" would be defined as IntrinsicUInt / VT_UI2.
    //    etc...
}

Exigences

Exigence Valeur
d’en-tête dbgmodel.h

Voir aussi

interface IDebugHostType2