IDebugHostType::GetArrayDimensions 方法 (dbgmodel.h)
GetArrayDimensions 方法返回一组描述符,一个描述符用于数组的每个维度,如 GetArrayDimensionality 方法所示。 每个描述符都是一个 ArrayDimension 结构,用于描述每个数组维度的起始索引、长度和前进步幅。 这允许描述比 C 类型系统中允许的更强大的数组构造。
对于 C 样式数组,此处返回一个数组维度,其值始终为:
- LowerBound = 0
- Length = ARRAYSIZE (array)
- Stride = sizeof (elementType)
语法
HRESULT GetArrayDimensions(
ULONG64 dimensions,
ArrayDimension *pDimensions
);
参数
dimensions
指示要提取的维度描述符的数量。 这必须是从调用 GetArrayDimensionality 获取的值。 将填充的维度 ArrayDimension 结构的缓冲区,以全面描述内存中数组的布局。
pDimensions
将填充的维度 ArrayDimension 结构的缓冲区,以全面描述内存中数组的布局。
返回值
此方法返回指示成功或失败的 HRESULT。
注解
示例代码
ComPtr<IDebugHostType> spType; /* get a type for some array (see FindTypeByName) */
ArrayDimension adim;
if (SUCCEEDED(spType->GetArrayDimensions(1, &adim)))
{
// adim indicates information about the dimension. For C/C++, length is
// the largely relevant field. C/C++ arrays are always zero based. The
// stride field would indicate the size of the array element type.
}
要求
要求 | 值 |
---|---|
Header | dbgmodel.h |