Classe index
Define um vetor de índice de dimensão N.
Sintaxe
template <int _Rank>
class index;
Parâmetros
_Rank
A classificação ou o número de dimensões.
Membros
Construtores públicos
Nome | Descrição |
---|---|
Construtor index | Inicializa uma nova instância da classe index . |
Operadores públicos
Nome | Descrição |
---|---|
operador-- | Decrementa cada elemento do objeto index . |
operador%= | Calcula o módulo (restante) de cada elemento no objeto index quando esse elemento é dividido por um número. |
operator*= | Multiplica cada elemento do objeto index por um número. |
operator/= | Divide cada elemento do objeto index por um número. |
index::operator[] | Retorna o elemento que está no índice especificado. |
operador++ | Incrementa cada elemento do objeto index . |
operator+= | Adiciona o número especificado a cada elemento do objeto index . |
operator= | Copia o conteúdo do objeto especificado index para este objeto. |
operador-= | Subtrai o número especificado de cada elemento do objeto index . |
Constantes públicas
Nome | Descrição |
---|---|
Constante rank | Armazena a classificação do objeto index . |
Hierarquia de herança
index
Comentários
A estrutura index
representa um vetor de coordenadas de N inteiros que especifica uma posição exclusiva em um espaço de dimensão N. Os valores no vetor são ordenados do mais significativo para o menos significativo. Você pode recuperar os valores dos componentes usando o operator=.
Requisitos
Cabeçalho: amp.h
Namespace: Simultaneidade
Construtor index
Inicializa uma nova instância da classe Index.
index() restrict(amp,cpu);
index(
const index<_Rank>& _Other
) restrict(amp,cpu);
explicit index(
int _I
) restrict(amp,cpu);
index(
int _I0,
int _I1
) restrict(amp,cpu);
index(
int _I0,
int _I1,
int _I2
) restrict(amp,cpu);
explicit index(
const int _Array[_Rank]
) restrict(amp,cpu);
Parâmetros
_Array
Uma matriz unidimensional com os valores de classificação.
_I
O local do índice em um índice unidimensional.
_I0
O comprimento da dimensão mais significativa.
_I1
O comprimento da segunda dimensão mais significativa.
_I2
O comprimento da dimensão menos significativa.
_Other
Um objeto de índice no qual o novo objeto index se baseia.
operador--
Decrementa cada elemento do objeto index.
index<_Rank>& operator--() restrict(amp,cpu);
index operator--(
int
) restrict(amp,cpu);
Valores retornados
Para o operador de prefixo, o objeto index (*this
). Para o operador de sufixo, um novo objeto index.
operador%=
Calcula o módulo (restante) de cada elemento no objeto index quando esse elemento é dividido pelo número especificado.
index<_Rank>& operator%=(
int _Rhs
) restrict(cpu, amp);
Parâmetros
_Rhs
O número a ser dividido para encontrar o módulo.
Valor de retorno
O objeto index.
operator*=
Multiplica cada elemento no objeto index pelo número especificado.
index<_Rank>& operator*=(
int _Rhs
) restrict(amp,cpu);
Parâmetros
_Rhs
O número a ser multiplicado.
operator/=
Divide cada elemento no objeto index pelo número especificado.
index<_Rank>& operator/=(
int _Rhs
) restrict(amp,cpu);
Parâmetros
_Rhs
Número pelo qual dividir.
operador
Retorna o componente do índice no local especificado.
int operator[] (
unsigned _Index
) const restrict(amp,cpu);
int& operator[] (
unsigned _Index
) restrict(amp,cpu);
Parâmetros
_Index
Um inteiro que vai de 0 até a classificação menos 1.
Valor de retorno
O elemento que está no índice especificado.
Comentários
O exemplo a seguir exibe os valores de componente do índice.
// Prints 1 2 3.
concurrency::index<3> idx(1, 2, 3);
std::cout << idx[0] << "\n";
std::cout << idx[1] << "\n";
std::cout << idx[2] << "\n";
operador++
Incrementa cada elemento do objeto index.
index<_Rank>& operator++() restrict(amp,cpu);
index<_Rank> operator++(
int
) restrict(amp,cpu);
Valor de retorno
Para o operador de prefixo, o objeto index (*this
). Para o operador de sufixo, um novo objeto index.
operator+=
Adiciona o número especificado a cada elemento do objeto index.
index<_Rank>& operator+=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator+=(
int _Rhs
) restrict(amp,cpu);
Parâmetros
_Rhs
O número a adicionar.
Valor de retorno
O objeto index.
operator=
Copia o conteúdo do objeto index especificado para este objeto.
index<_Rank>& operator=(
const index<_Rank>& _Other
) restrict(amp,cpu);
Parâmetros
_Other
O objeto index do qual copiar.
Valor de retorno
Uma referência a esse objeto index.
operador-=
Subtrai o número especificado de cada elemento do objeto index.
index<_Rank>& operator-=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator-=(
int _Rhs
) restrict(amp,cpu);
Parâmetros
_Rhs
O número a ser subtraído.
Valor de retorno
O objeto index.
Rank
Obtém a classificação do objeto index.
static const int rank = _Rank;