UDT
Each class, structure, and union is identified by a SymTagUDT symbol. Each member, function, data, or nested type, and each base class, appears as a class child of the user-defined type (UDT).
Properties
The following table shows additional valid properties for this symbol type.
Property |
Data type |
Description |
---|---|---|
IDiaSymbol* |
Symbol for the class parent, if any. |
|
DWORD |
ID of the class parent symbol. |
|
BOOL |
TRUE if the UDT has a constructor. |
|
BOOL |
TRUE if the UDT is marked as constant. |
|
BOOL |
TRUE if the UDT has any assignment operators defined. |
|
BOOL |
TRUE if the UDT has any cast operators defined. |
|
BOOL |
TRUE if the UDT has nested type definitions. |
|
LONGLONG |
The size, in bytes, of the UDT. |
|
IDiaSymbol* |
Symbol of the enclosing Compiland. |
|
DWORD |
ID of the lexical parent symbol. |
|
BSTR |
The name of the UDT. |
|
BOOL |
TRUE if the UDT is nested. |
|
BOOL |
TRUE if overloaded operators are defined for the UDT. |
|
BOOL |
TRUE if the UDT is packed. |
|
BOOL |
TRUE if the UDT appears in a nonglobal lexical scope. |
|
DWORD |
Index ID of symbol. |
|
DWORD |
Returns SymTagUDT (one of the SymTagEnum values). |
|
DWORD |
Indicates whether this is a structure, class, or union; for details, see UdtKind. |
|
BOOL |
TRUE if the UDT is unaligned. |
|
IDiaSymbol* |
The type of the virtual table. |
|
DWORD |
ID of the virtual table shape symbol. |
|
BOOL |
TRUE if the UDT is marked as volatile. |