Método IDebugHostType::GetIntrinsicType (dbgmodel.h)
O método GetIntrinsicType retorna informações sobre que tipo de intrínseco o tipo é. Dois valores são retornados desse método:
O tipo intrínseco indica o tipo geral (por exemplo: inteiro, sem sinal, ponto flutuante), mas não o tamanho do tipo (por exemplo: 8 bits, 16 bits, 32 bits, 64 bits)
O tipo de operadora indica como o tipo intrínseco é empacotado em uma estrutura VARIANT. Esta é uma constante VT_*.
A combinação dos dois valores fornece o conjunto completo de informações sobre o intrínseco.
Sintaxe
HRESULT GetIntrinsicType(
IntrinsicKind *intrinsicKind,
VARTYPE *carrierType
);
Parâmetros
intrinsicKind
O tipo de intrínseco será retornado aqui. Isso indicará o tipo geral do intrínseco , se é um número inteiro, sem sinal, ponto flutuante etc... Ele não indicará o tamanho do intrínseco. Inteiros de 8, 16, 32 e 64 bits serão relatados como inteiros com sinal.
carrierType
Uma constante VT_* que indica como o intrínseco será empacotado em uma estrutura VARIANT é retornado aqui. Isso, combinado com o valor retornado no argumento intrínsecoKind, fornece as informações completas necessárias para entender a natureza do intrínseco.
Retornar valor
Esse método retorna HRESULT que indica êxito ou falha.
Comentários
Código de exemplo
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...
}
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | dbgmodel.h |