次の方法で共有


TypeKind 列挙 (dbgmodel.h)

型の種類を定義します。

構文

typedef enum TypeKind {
  TypeUDT,
  TypePointer,
  TypeMemberPointer,
  TypeArray,
  TypeFunction,
  TypeTypedef,
  TypeEnum,
  TypeIntrinsic,
  TypeExtendedArray
} ;

定数

 
TypeUDT
ユーザー定義型 (構造体、クラス、共用体など)。型が TypeUDT であるネイティブ型を持つモデル オブジェクトには ObjectTargetObject の正規表現があり、その型は常に対応する IModelObject 内に保持されます。
TypePointer
ポインター。 型が TypePointer であるネイティブ型を持つモデル オブジェクトは ObjectIntrinsic の正規表現を持ち、ポインターの値は 0 でVT_UI8に拡張され、この 64 ビット形式の組み込みデータとして保持されます。 TypePointer の型シンボルには、ポインターが指す型の基本型 (GetBaseType メソッドによって返される) があります。
TypeMemberPointer
クラス メンバーへのポインター。 型が TypeMemberPointer であるネイティブ型を持つモデル オブジェクトには、組み込みの正規表現 (ポインター値と同じ値) があります。 この値の正確な意味は、コンパイラ/デバッグ ホスト固有です。
TypeArray
配列。 型が TypeArray であるネイティブ型を持つモデル オブジェクトは、ObjectTargetObject の正規表現を持ちます。 配列のベース アドレスは、オブジェクトの位置 (GetLocation メソッドを使用して取得) であり、配列の型は常に保持されます。 TypeArray の型シンボルには、配列が配列である型の基本型 (GetBaseType メソッドによって返される) があります。
TypeFunction
関数です。
TypeTypedef
typedef。 型が TypeTypedef であるネイティブ型を持つモデル オブジェクトは、typedef の基になる最終的な型の正規表現と同じ正規表現を持ちます。 これは、 IDebugHostType2 の明示的な typedef メソッドを使用して typedef 情報を照会する場合、または typedef に対して明示的なデータ モデルが登録されていない限り、オブジェクトのエンド ユーザーと型情報に対して完全に透過的に表示されます。 GetTypeKind メソッドは TypeTypedef を返しません。 すべてのメソッドは、typedef の基になる最終的な型が返す内容を返します。 IDebugHostType2 には typedef 固有のメソッドがあり、これを使用して typedef 固有の情報を取得できます。
TypeEnum
列挙型。 型が TypeEnum であるネイティブ型を持つモデル オブジェクトは、ObjectIntrinsic の正規表現を持ち、組み込みの値と型は列挙型の値と同じです。
TypeIntrinsic
組み込み (基本型)。 型が TypeIntrinsic であるネイティブ型を持つ model オブジェクトは、ObjectIntrinsic の正規表現を持ちます。 型情報は保持される場合と保持されない場合があります。特に、基になる型が IModelObject に格納されている組み込みデータのバリアント データ型 (VT_*) によって完全に記述されている場合
TypeExtendedArray
型は、TypeArray として表すことができない配列です。 これは、動的サイズ、動的境界などが原因です。CLI 配列は TypeExtendedArray として表されます。

要件

要件
Header dbgmodel.h

こちらもご覧ください

Debugger Data Model C++ の概要