Поделиться через


Метод IDebugHostType2::GetIntrinsicType (dbgmodel.h)

Метод GetIntrinsicType возвращает сведения о типе встроенного типа. Из этого метода возвращаются два значения:

  • Встроенный тип указывает общий тип (например, целое число, без знака, с плавающей запятой), но не размер типа (например, 8 бит, 16 бит, 32 бит, 64 бит).

  • Тип носителя указывает, как встроенный тип упаковывается в структуру VARIANT. Это константа VT_*.

Сочетание этих двух значений предоставляет полный набор сведений о встроенной функции.

Синтаксис

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

Параметры

intrinsicKind

Здесь будет возвращен тип встроенной функции. Это будет указывать общий тип встроенной функции : целое число, без знака, плавающая запятая и т. д. Он не будет указывать размер встроенной функции. 8, 16, 32 и 64-разрядные целые числа будут представлены как целые числа со знаком.

carrierType

Здесь возвращается константа VT_*, указывающая, как встроенная функция будет упаковываться в структуру VARIANT. Это в сочетании со значением, возвращаемым в аргументе intrinsicKind, предоставляет полную информацию, необходимую для понимания природы встроенной функции.

Возвращаемое значение

Этот метод возвращает HRESULT, который указывает на успех или сбой.

Комментарии

Образец кода

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...
}

Требования

Требование Значение
Заголовок dbgmodel.h

См. также раздел

Интерфейс IDebugHostType2