dbgmodel.h) (位置结构
定义对象的位置。 Location 的此特定变体是 C-COM 访问结构。
请注意,位置仅与主机上下文一起具有意义。 它是上下文中的一个位置。 对位置执行操作时, (读取字节、写入字节等...) ,必须提供有效的主机上下文。
语法
struct Location {
ULONG64 HostDefined;
ULONG64 Offset;
void Location();
void Location(
ULONG64 virtualAddress
);
void Location(
const Location & src
);
Location & operator=(
const Location & src
);
Location & operator=(
ULONG64 virtualAddress
);
bool operator==(
const Location & rhs
);
bool operator!=(
const Location & rhs
);
Location & operator+=(
LONG64 offset
);
Location & operator-=(
LONG64 offset
);
Location operator+(
LONG64 offset
);
Location operator-(
LONG64 offset
);
ULONG64 GetOffset();
bool IsVirtualAddress();
};
成员
HostDefined
“主机定义”字段在 API 层具有两种状态,即“非不透明”。
0:指示偏移量是指向目标虚拟地址空间的指针。
非零:定义的值是主机的专有值。 客户端可以传播和更改偏移量。 它们不能在法律上更改值。 如果此结构是从 C++ 代码生成的,则此结构可由 IsVirtualAddress () 方法确定。
Offset
由主机上下文和此结构的 HostDefined 字段定义的地址空间的位置偏移量。 如果 HostDefined 字段为零,则这是位置的虚拟地址。 如果 HostDefined 字段为非零,则表示其他某个地址空间的偏移量。 例如,它可以指示已注册结构的特定字段在包含的寄存器中的位置。
复制构造位置。
Default 构造等效的 nullptr。
void location ( ULONG64 virtualAddress)
构造从偏移量到目标虚拟地址空间的位置。
void Location ( const Location & src)
复制构造位置。
Location & operator= ( const Location & src)
位置函数的复制赋值运算符。
Location & operator= ( ULONG64 virtualAddress)
位置函数的赋值运算符。
bool operator== ( const Location & rhs)
位置函数的等效运算符。
bool 运算符!= ( const Location & rhs)
不等于位置函数的比较运算符。
location 函数的加法赋值运算符。
位置函数的减法赋值运算符。
location 函数的加法运算符。
位置函数的减法运算符。
返回位置的偏移量。
指示位置是否引用虚拟地址。
要求
要求 | 值 |
---|---|
Header | dbgmodel.h |