extent 類別 (C++ AMP)

表示 N 整數值的向量 ,指定具有 0 原點的 N 維度空間界限。 向量中的值會從最顯著到最不重要的順序排序。

語法

template <int _Rank>
class extent;

參數

_排名
物件的排名 extent

需求

標頭︰ amp.h

命名空間: 並行

成員

公用建構函式

名稱 描述
extent 建構函式 初始化 extent 類別的新執行個體。

公用方法

名稱 描述
contains 確認指定的 extent 物件具有指定的順位。
size 傳回範圍的匯流排性大小(以元素單位為單位)。
tiled_extent產生具有指定維度所指定之磚範圍的物件。

公用運算子

名稱 描述
operator- 傳回從對應 extent 專案減去 index 專案所建立的新 extent 物件。
運算元-- 遞減 物件的每個專案 extent
operator%= 當該元素除以數位時,計算 物件中 extent 每個專案的模數(餘數)。
operator*= 將 物件的每個專案 extent 乘以數位。
operator/= 將 物件的每個專案 extent 除以數位。
extent::operator[] 傳回位於指定索引處的專案。
operator+ 傳回藉由新增對應 indexextent 專案所建立的新 extent 物件。
operator++ 遞增 物件的每個專案 extent
operator+= 將指定的數位加入至 物件的每個專案 extent
operator= 將另一個 extent 物件的內容複寫到這個物件中。
operator-= 從 物件的每個元素 extent 減去指定的數位。

公用常數

名稱 描述
rank 常數 取得 物件的排名 extent

繼承階層架構

extent

contains

指出指定的 索引 值是否包含在 物件內 extent

語法

bool contains(const index<rank>& _Index) const restrict(amp,cpu);

參數

_指數
index 測試的值。

傳回值

true 如果指定的 索引 值包含在 物件中 extent ,則為 ,否則為 false

extent

初始化 extent 類別的新執行個體。

語法

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);

參數

_陣 列
用來建立新 extent 物件的整數陣列 _Rank

_I
範圍長度。

_I0
最顯著維度的長度。

_I1
下一個最大維度的長度。

_I2
最小有效維度的長度。

_其他
extentextent 物件所依據的物件。

備註

預設建構函式會 extent 初始化具有三個排名的物件。

如果使用陣列來建構 extent 物件,陣列的長度必須符合物件的排名 extent

operator%=

計算 中每個元素的模數(餘數),該元素 extent 除以數位時。

語法

extent<_Rank>& operator%=(int _Rhs) restrict(cpu, direct3d);

參數

_Rhs
要尋找模數的數位。

傳回值

extent 物件。

operator*=

將 物件中的每個 extent 專案乘以指定的數位。

語法

extent<_Rank>& operator*=(int _Rhs) restrict(amp,cpu);

參數

_Rhs
要相乘的數位。

傳回值

extent 物件。

operator+

傳回藉由加入對應的 indexextent 專案所建立的新 extent 物件。

語法

extent<_Rank> operator+(const index<_Rank>& _Rhs) restrict(amp,cpu);

參數

_Rhs
index物件,其中包含要加入的專案。

傳回值

新的 extent 物件。

operator++

遞增 物件的每個專案 extent

語法

extent<_Rank>& operator++() restrict(amp,cpu);
extent<_Rank> operator++(int)restrict(amp,cpu);

傳回值

如果是前置詞運算子,則為 extent 物件 ( *this )。 如果是尾碼運算子,則為新的 extent 物件。

operator+=

將指定的數位加入至 物件的每個專案 extent

語法

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);

參數

_Rhs
要加入的數位、索引或範圍。

傳回值

產生 extent 物件。

operator-

從這個 extent 物件中的對應專案減去指定 index 物件中的每個專案,以建立新的 extent 物件。

語法

extent<_Rank> operator-(const index<_Rank>& _Rhs) restrict(amp,cpu);

參數

_Rhs
index物件,其中包含要減去的專案。

傳回值

新的 extent 物件。

運算元--

遞減 物件中的每個 extent 專案。

語法

extent<_Rank>& operator--() restrict(amp,cpu);
extent<_Rank> operator--(int)restrict(amp,cpu);

傳回值

如果是前置詞運算子,則為 extent 物件 ( *this )。 如果是尾碼運算子,則為新的 extent 物件。

operator/=

將 物件中的每個 extent 專案除以指定的數位。

語法

extent<_Rank>& operator/=(int _Rhs) restrict(amp,cpu);

參數

_Rhs
要除以的數位。

傳回值

extent 物件。

operator-=

從 物件的每個元素 extent 減去指定的數位。

語法

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);

參數

_Rhs
要減去的數位。

傳回值

產生 extent 物件。

operator=

將另一個 extent 物件的內容複寫到這個物件中。

語法

extent<_Rank>& operator=(const extent<_Rank>& _Other) restrict(amp,cpu);

參數

_其他
extent 從中複製的物件。

傳回值

這個 extent 物件的參考。

extent::operator []

傳回位於指定索引處的專案。

語法

int operator[](unsigned int _Index) const restrict(amp,cpu);
int& operator[](unsigned int _Index) restrict(amp,cpu);

參數

_指數
從 0 到排名減 1 的整數。

傳回值

位於指定索引處的專案。

rank

儲存物件的排名 extent

語法

static const int rank = _Rank;

size

傳回物件的匯流排性大小 extent (以元素單位為單位)。

語法

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 ;

參數

_Dim0
磚化範圍最重要的元件。 _Dim1
磚式範圍的下一到最重要元件。 _Dim2
磚式範圍的最小重要元件。

另請參閱

Concurrency 命名空間 (C++ AMP)