Represents a vector of N integer values that specify the bounds of an N-dimensional space that has an origin of 0. 向量中的值按从最高有效到最低有效的顺序排列。
Syntax
template <int _Rank>
class extent;
Parameters
_Rank
extent 对象的排名。
Requirements
Header: amp.h
Namespace: Concurrency
Members
Public Constructors
| Name | Description |
|---|---|
| extent Constructor | 初始化 extent 类的新实例。 |
Public Methods
| Name | Description |
|---|---|
| contains | 验证指定的 extent 对象是否具有指定的排名。 |
| size | 返回盘区的总线性大小(以元素单位)。 |
| tile | 生成具有指定维度提供的磁贴盘区的 tiled_extent 对象。 |
Public Operators
| Name | Description |
|---|---|
| operator- | 返回通过从相应的 extent 元素减去 index 元素而创建的新 extent 对象。 |
| operator-- | 递减 extent 对象的每个元素。 |
| operator%= | 在元素除以某个数时,计算 extent 对象中每个元素的模数(余数)。 |
| operator*= | 将 extent 对象的每个元素与某个数相乘。 |
| operator/= | 将 extent 对象的每个元素除以某个数。 |
| extent::operator[] | 返回位于指定索引处的元素。 |
| operator+ | 返回通过添加相应的 extent 和 index 元素创建的新 extent 对象。 |
| operator++ | 递增 extent 对象的每个元素。 |
| operator+= | 向 extent 对象的每个元素增加指定数字。 |
| operator= | 将另一 extent 对象的内容复制到此对象。 |
| operator-= | 从 extent 对象的每个元素中减去指定的数字。 |
Public Constants
| Name | Description |
|---|---|
| rank Constant | 获取 extent 对象的排名。 |
Inheritance Hierarchy
extent
contains
Indicates whether the specified index value is contained within the extent object.
Syntax
bool contains(const index<rank>& _Index) const restrict(amp,cpu);
Parameters
_Index
要测试的 index 值。
Return Value
true if the specified index value is contained in the extent object; otherwise, false.
盘区
初始化 extent 类的新实例。
Syntax
extent() restrict(amp,cpu);
extent(const extent<_Rank>& _Other) restrict(amp,cpu);
explicit extent(int _I) restrict(amp,cpu);
extent(int _I0, int _I1) restrict(amp,cpu);
extent(int _I0, int _I1, int _I2) restrict(amp,cpu);
explicit extent(const int _Array[_Rank])restrict(amp,cpu);
Parameters
_Array
用于创建新 _Rank 对象的 extent 整数数组。
_I
盘区的长度。
_I0
最高有效维度的长度。
_I1
仅次于最高有效维度的长度。
_I2
最低有效维度的长度。
_Other
新 extent 对象所基于的 extent 对象。
Remarks
默认构造函数会初始化排名为 3 的 extent 对象。
如果使用数组构造 extent 对象,则该数组的长度必须与 extent 对象的排名匹配。
operator%=
在元素除以某个数时,计算 extent 中每个元素的模数(余数)。
Syntax
extent<_Rank>& operator%=(int _Rhs) restrict(cpu, direct3d);
Parameters
_Rhs
要查找其模数的数字。
Return Value
extent 对象。
operator*=
将 extent 对象中的每个元素乘以指定数字。
Syntax
extent<_Rank>& operator*=(int _Rhs) restrict(amp,cpu);
Parameters
_Rhs
要相乘的数字。
Return Value
extent 对象。
operator+
返回通过添加相应的 extent 和 index 元素创建的新 extent 对象。
Syntax
extent<_Rank> operator+(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parameters
_Rhs
包含要添加的元素的 index 对象。
Return Value
新的 extent 对象。
operator++
递增 extent 对象的每个元素。
Syntax
extent<_Rank>& operator++() restrict(amp,cpu);
extent<_Rank> operator++(int)restrict(amp,cpu);
Return Value
对于前缀运算符,是 extent 对象 (*this)。 对于后缀运算符,则是新的 extent 对象。
operator+=
向 extent 对象的每个元素增加指定数字。
Syntax
extent<_Rank>& operator+=(const extent<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator+=(const index<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator+=(int _Rhs) restrict(amp,cpu);
Parameters
_Rhs
要添加的数字、索引或盘区。
Return Value
生成的 extent 对象。
operator-
通过从此 extent 对象中的相应元素中减去指定 index 对象中的每个元素来创建新的 extent 对象。
Syntax
extent<_Rank> operator-(const index<_Rank>& _Rhs) restrict(amp,cpu);
Parameters
_Rhs
包含要减去的元素的 index 对象。
Return Value
新的 extent 对象。
operator--
递减 extent 对象中的每个元素。
Syntax
extent<_Rank>& operator--() restrict(amp,cpu);
extent<_Rank> operator--(int)restrict(amp,cpu);
Return Value
对于前缀运算符,是 extent 对象 (*this)。 对于后缀运算符,则是新的 extent 对象。
operator/=
将 extent 对象中的每个元素除以指定的数字。
Syntax
extent<_Rank>& operator/=(int _Rhs) restrict(amp,cpu);
Parameters
_Rhs
要除以的数字。
Return Value
extent 对象。
operator-=
从 extent 对象的每个元素中减去指定的数字。
Syntax
extent<_Rank>& operator-=(const extent<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator-=(const index<_Rank>& _Rhs) restrict(amp,cpu);
extent<_Rank>& operator-=(int _Rhs) restrict(amp,cpu);
Parameters
_Rhs
要减去的数。
Return Value
生成的 extent 对象。
operator=
将另一 extent 对象的内容复制到此对象。
Syntax
extent<_Rank>& operator=(const extent<_Rank>& _Other) restrict(amp,cpu);
Parameters
_Other
要从其复制的 extent 对象。
Return Value
对此 extent 对象的引用。
extent::operator []
返回位于指定索引处的元素。
Syntax
int operator[](unsigned int _Index) const restrict(amp,cpu);
int& operator[](unsigned int _Index) restrict(amp,cpu);
Parameters
_Index
0 到秩减 1 之间的整数。
Return Value
位于指定索引处的元素。
级别
存储 extent 对象的秩。
Syntax
static const int rank = _Rank;
size
返回 extent 对象的总线性大小(以元素单位)。
Syntax
unsigned int size() const restrict(amp,cpu);
图块
生成具有指定磁贴维度的 tiled_extent 对象。
template <int _Dim0>
tiled_extent<_Dim0> tile() const ;
template <int _Dim0, int _Dim1>
tiled_extent<_Dim0, _Dim1> tile() const ;
template <int _Dim0, int _Dim1, int _Dim2>
tiled_extent<_Dim0, _Dim1, _Dim2> tile() const ;
Parameters
_Dim0
磁贴盘区中最重要的组件。
_Dim1
磁贴盘区中仅次于最重要组件的组件。
_Dim2
磁贴盘区中最不重要的组件。