index — Klasa

Definiuje wektor indeksu N-wymiarowego.

Składnia

template <int _Rank>
class index;

Parametry

_Rank
Ranga lub liczba wymiarów.

Członkowie

Konstruktory publiczne

Nazwa/nazwisko opis
konstruktor indeksu Inicjuje nowe wystąpienie klasy index.

Operatory publiczne

Nazwa/nazwisko opis
Operator-- Dekrementuje każdy element index obiektu.
operator%= Oblicza modulus (resztę) każdego elementu w index obiekcie, gdy ten element jest podzielony przez liczbę.
operator*= Mnoży każdy element index obiektu przez liczbę.
operator/= Dzieli każdy element index obiektu na liczbę.
index::operator[] Zwraca element znajdujący się w określonym indeksie.
operator++ Zwiększa każdy element index obiektu.
operator+= Dodaje określoną liczbę do każdego elementu index obiektu.
operator = Kopiuje zawartość określonego index obiektu do tego.
operator-= Odejmuje określoną liczbę z każdego elementu index obiektu.

Stałe publiczne

Nazwa/nazwisko opis
ranga, stała Przechowuje rangę index obiektu.

Hierarchia dziedziczenia

index

Uwagi

Struktura index reprezentuje wektor współrzędny N liczb całkowitych, który określa unikatową pozycję w przestrzeni N-wymiarowej. Wartości w wektorze są uporządkowane od najbardziej znaczących do najmniej znaczących. Wartości składników można pobrać przy użyciu operatora=.

Wymagania

Nagłówek: amp.h

Przestrzeń nazw: współbieżność

konstruktor indeksu

Inicjuje nowe wystąpienie klasy indeksu.

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

Parametry

_Tablicy
Tablica jednowymiarowa z wartościami rangi.

_I
Lokalizacja indeksu w indeksie jednowymiarowym.

_I0
Długość najbardziej znaczącego wymiaru.

_I1
Długość wymiaru następnego do najbardziej znaczącego.

_I2
Długość najmniej znaczącego wymiaru.

_Innych
Obiekt indeksu, na którym jest oparty nowy obiekt indeksu.

Operator--

Dekrementuje każdy element obiektu indeksu.

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

index operator--(
   int
) restrict(amp,cpu);

Zwracane wartości

Dla operatora prefiksu obiekt indeksu (*this). Dla operatora sufiksu nowy obiekt indeksu.

operator%=

Oblicza modulo (resztę) każdego elementu w obiekcie indeksu, gdy ten element jest podzielony przez określoną liczbę.

index<_Rank>& operator%=(
   int _Rhs
) restrict(cpu, amp);

Parametry

_Rhs
Liczba, przez którą należy podzielić, aby znaleźć modulo.

Wartość zwracana

Obiekt indeksu.

operator*=

Mnoży każdy element w obiekcie indeksu przez określoną liczbę.

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

Parametry

_Rhs
Liczba do pomnożenia.

operator/=

Dzieli każdy element w obiekcie indeksu przez określoną liczbę.

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

Parametry

_Rhs
Liczba do podzielenia.

operator[]

Zwraca składnik indeksu w określonej lokalizacji.

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

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

Parametry

_Indeks
Liczba całkowita z zakresu od 0 do rangi minus 1.

Wartość zwracana

Element, który znajduje się w określonym indeksie.

Uwagi

W poniższym przykładzie przedstawiono wartości składników indeksu.

// 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";

operator++

Zwiększa każdy element obiektu indeksu.

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

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

Wartość zwracana

Dla operatora prefiksu obiekt indeksu (*this). Dla operatora sufiksu nowy obiekt indeksu.

operator+=

Dodaje określoną liczbę do każdego elementu obiektu indeksu.

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

index<_Rank>& operator+=(
   int _Rhs
) restrict(amp,cpu);

Parametry

_Rhs
Liczba do dodania.

Wartość zwracana

Obiekt indeksu.

operator =

Kopiuje zawartość określonego obiektu indeksu do tego obiektu.

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

Parametry

_Innych
Obiekt indeksu do skopiowania.

Wartość zwracana

Odwołanie do tego obiektu indeksu.

operator-=

Odejmuje określoną liczbę z każdego elementu obiektu indeksu.

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

index<_Rank>& operator-=(
   int _Rhs
) restrict(amp,cpu);

Parametry

_Rhs
Liczba do odejmowania.

Wartość zwracana

Obiekt indeksu.

Ranga

Pobiera rangę obiektu indeksu.

static const int rank = _Rank;

Zobacz też

Przestrzeń nazw współbieżności (C++ AMP)