FIELD_KIND
如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件。
指定欄位中所包含的類型IDebugField物件。
語法
enum enum_FIELD_KIND {
FIELD_KIND_NONE = 0x00000000,
// Type of field
FIELD_KIND_TYPE = 0x00000001,
FIELD_KIND_SYMBOL = 0x00000002,
// Storage type of the field
FIELD_TYPE_PRIMITIVE = 0x00000010,
FIELD_TYPE_STRUCT = 0x00000020,
FIELD_TYPE_CLASS = 0x00000040,
FIELD_TYPE_INTERFACE = 0x00000080,
FIELD_TYPE_UNION = 0x00000100,
FIELD_TYPE_ARRAY = 0x00000200,
FIELD_TYPE_METHOD = 0x00000400,
FIELD_TYPE_BLOCK = 0x00000800,
FIELD_TYPE_POINTER = 0x00001000,
FIELD_TYPE_ENUM = 0x00002000,
FIELD_TYPE_LABEL = 0x00004000,
FIELD_TYPE_TYPEDEF = 0x00008000,
FIELD_TYPE_BITFIELD = 0x00010000,
FIELD_TYPE_NAMESPACE = 0x00020000,
FIELD_TYPE_MODULE = 0x00040000,
FIELD_TYPE_DYNAMIC = 0x00080000,
FIELD_TYPE_PROP = 0x00100000,
FIELD_TYPE_INNERCLASS = 0x00200000,
FIELD_TYPE_REFERENCE = 0x00400000,
FIELD_TYPE_EXTENDED = 0x00800000,
// Specific information about symbols
FIELD_SYM_MEMBER = 0x01000000,
FIELD_SYM_LOCAL = 0x02000000,
FIELD_SYM_PARAM = 0x04000000,
FIELD_SYM_THIS = 0x08000000,
FIELD_SYM_GLOBAL = 0x10000000,
FIELD_SYM_PROP_GETTER = 0x20000000,
FIELD_SYM_PROP_SETTER = 0x40000000,
FIELD_SYM_EXTENDED = 0x80000000,
FIELD_KIND_MASK = 0x0000000f,
FIELD_TYPE_MASK = 0x00fffff0,
FIELD_SYM_MASK = 0xff000000,
FIELD_KIND_ALL = 0xffffffff
};
typedef DWORD FIELD_KIND;
public enum enum_FIELD_KIND {
FIELD_KIND_NONE = 0x00000000,
// Type of field
FIELD_KIND_TYPE = 0x00000001,
FIELD_KIND_SYMBOL = 0x00000002,
// Storage type of the field
FIELD_TYPE_PRIMITIVE = 0x00000010,
FIELD_TYPE_STRUCT = 0x00000020,
FIELD_TYPE_CLASS = 0x00000040,
FIELD_TYPE_INTERFACE = 0x00000080,
FIELD_TYPE_UNION = 0x00000100,
FIELD_TYPE_ARRAY = 0x00000200,
FIELD_TYPE_METHOD = 0x00000400,
FIELD_TYPE_BLOCK = 0x00000800,
FIELD_TYPE_POINTER = 0x00001000,
FIELD_TYPE_ENUM = 0x00002000,
FIELD_TYPE_LABEL = 0x00004000,
FIELD_TYPE_TYPEDEF = 0x00008000,
FIELD_TYPE_BITFIELD = 0x00010000,
FIELD_TYPE_NAMESPACE = 0x00020000,
FIELD_TYPE_MODULE = 0x00040000,
FIELD_TYPE_DYNAMIC = 0x00080000,
FIELD_TYPE_PROP = 0x00100000,
FIELD_TYPE_INNERCLASS = 0x00200000,
FIELD_TYPE_REFERENCE = 0x00400000,
FIELD_TYPE_EXTENDED = 0x00800000,
// Specific information about symbols
FIELD_SYM_MEMBER = 0x01000000,
FIELD_SYM_LOCAL = 0x02000000,
FIELD_SYM_PARAM = 0x04000000,
FIELD_SYM_THIS = 0x08000000,
FIELD_SYM_GLOBAL = 0x10000000,
FIELD_SYM_PROP_GETTER = 0x20000000,
FIELD_SYM_PROP_SETTER = 0x40000000,
FIELD_SYM_EXTENDED = 0x80000000,
FIELD_KIND_MASK = 0x0000000f,
FIELD_TYPE_MASK = 0x00fffff0,
FIELD_SYM_MASK = 0xff000000,
FIELD_KIND_ALL = 0xffffffff
};
Members
FIELD_KIND_TYPE
表示欄位是僅限型別。
FIELD_KIND_SYMBOL
表示欄位的符號,具有類型、 名稱和其他資訊。
FIELD_TYPE_PRIMITIVE
表示欄位的基本資料類型。
FIELD_TYPE_STRUCT
表示欄位是一種結構。
FIELD_TYPE_CLASS
表示欄位的類別。
FIELD_TYPE_INTERFACE
表示欄位是一種介面。
FIELD_TYPE_UNION
表示欄位是聯集。
FIELD_TYPE_ARRAY
表示欄位的陣列。
FIELD_TYPE_METHOD
表示欄位是一種方法。
FIELD_TYPE_BLOCK
表示欄位是一個區塊。
FIELD_TYPE_POINTER
表示欄位的指標。
FIELD_TYPE_ENUM
表示欄位是列舉的資料型別。
FIELD_TYPE_LABEL
表示欄位的標籤。
FIELD_TYPE_TYPEDEF
表示欄位的 typedef。
FIELD_TYPE_BITFIELD
表示欄位是位元欄位內。
FIELD_TYPE_NAMESPACE
表示欄位的命名空間。
FIELD_TYPE_MODULE
表示欄位是一個模組。
FIELD_TYPE_DYNAMIC
表示欄位是動態。
FIELD_TYPE_PROP
表示欄位的屬性。
FIELD_TYPE_INNERCLASS
表示欄位是內部的類別。
FIELD_TYPE_REFERENCE
表示欄位的參考。
FIELD_TYPE_EXTENDED
保留供未來使用。
FIELD_SYM_MEMBER
表示欄位的成員。
FIELD_SYM_LOCAL
表示欄位是本機。
FIELD_SYM_PARAMETER
表示欄位的參數。
FIELD_SYM_THIS
表示欄位是 「 this 」 指標。
FIELD_SYM_GLOBAL
表示全域欄位。
FIELD_SYM_PROP_GETTER
表示欄位擷取的屬性。
FIELD_SYM_PROP_SETTER
表示欄位會設定屬性。
FIELD_SYM_EXTENDED
保留供未來使用。
FIELD_KIND_MASK
表示遮罩的欄位類型。
FIELD_TYPE_MASK
表示遮罩的欄位型別。
FIELD_SYM_MASK
表示遮罩的符號資訊。
備註
從呼叫傳回GetKind方法。
欄位類型而定QueryInterface可以呼叫IDebugField介面更特定形式的介面。 例如,如果GetKind傳回FIELD_TYPE_METHOD
,您就可以呼叫QueryInterface
iDebugField
取得IDebugMethodField介面。
需求
標頭︰ sh.h
命名空間︰ Microsoft.VisualStudio.Debugger.Interop
組件︰ Microsoft.VisualStudio.Debugger.Interop.dll