此枚举定义扩展数组的一个维度的内存布局。 它旨在完全描述 CLI(ECMA-335)数组的数组布局。
语法
typedef enum ExtendedArrayDimensionFlags {
ExtendedArrayLengthIsOffset32,
ExtendedArrayLengthIsOffset64,
ExtendedArrayLengthIsOffset,
ExtendedArrayLowerBoundIsOffset32,
ExtendedArrayLowerBoundIsOffset64,
ExtendedArrayLowerBoundIsOffset,
ExtendedArrayStrideIsOffset32,
ExtendedArrayStrideIsOffset64,
ExtendedArrayStrideIsOffset,
ExtendedArrayStrideIsComputedByNextRank,
ExtendedArrayStrideIsComputedByPreviousRank,
ExtendedArrayStrideIsComputed
} ;
常数
ExtendedArrayLengthIsOffset32指示数组维度的“Length”字段是数组基址的偏移量,用于查找动态大小。 |
ExtendedArrayLengthIsOffset64类似于 ExtendedArrayLengthIsOffset32,但对于 64 位偏移量。 |
ExtendedArrayLengthIsOffset可以使用此标志代替 ExtendedArrayLengthIsOffset32 或 ExtendedArrayLengthIsOffset64 来表示动态大小的偏移量。 |
ExtendedArrayLowerBoundIsOffset32指示数组维度的“LowerBound”字段与查找动态边界的数组基址的偏移量。 |
ExtendedArrayLowerBoundIsOffset64类似于 ExtendedArrayLowerBoundIsOffset32,但对于 64 位偏移量。 |
ExtendedArrayLowerBoundIsOffset可以使用此标志代替 ExtendedArrayLowerBoundIsOffset32 或 ExtendedArrayLowerBoundIsOffset64 来表示动态绑定的偏移量。 |
ExtendedArrayStrideIsOffset32指示数组维度的“Stride”字段是数组基址的偏移量,用于查找动态步幅。 |
ExtendedArrayStrideIsOffset64类似于 ExtendedArrayStrideIsOffset32,但对于 64 位偏移量。 |
ExtendedArrayStrideIsOffset可以使用此标志代替 ExtendedArrayStrideIsOffset32 或 ExtendedArrayStrideIsOffset64 来表示动态步幅的偏移量。 |
ExtendedArrayStrideIsComputedByNextRank指示从元素大小和每个维度的计算大小计算“Stride”字段,如其他字段指示。 此维度的步幅基于下一步(例如:dim[0])的最大步幅。 |
ExtendedArrayStrideIsComputedByPreviousRank类似于 ExtendedArrayStrideIsComputedByNextRank,但此维度的步幅基于上一个(例如:dim[0])的步幅是最小的)。 |
ExtendedArrayStrideIsComputed可以使用此标志代替 ExtendedArrayStrideIsComputedByNextRank 或 ExtendedArrayStrideIsComputedByPreviousRank 来表示步幅是根据其他维度计算的。 |
要求
| 要求 | 价值 |
|---|---|
| 标头 | dbgmodel.h |