Share via


indexklasse

Definieert een N-dimensionale indexvector.

Syntaxis

template <int _Rank>
class index;

Parameterwaarden

_Rang
De rang of het aantal dimensies.

Leden

Openbare constructors

Naam Description
indexconstructor Initialiseert een nieuw exemplaar van de index klasse.

Openbare operators

Naam Description
Operator-- Hiermee wordt elk element van het index object verminderd.
operator%= Berekent de modulus (rest) van elk element in het index object wanneer dat element wordt gedeeld door een getal.
operator*= Vermenigvuldigt elk element van het index object met een getal.
operator/= Verdeelt elk element van het index object door een getal.
index::operator[] Retourneert het element dat op de opgegeven index staat.
operator++ Hiermee wordt elk element van het index object verhoogd.
operator+= Hiermee wordt het opgegeven getal toegevoegd aan elk element van het index object.
operator= Hiermee kopieert u de inhoud van het opgegeven index object naar dit object.
operator-= Hiermee wordt het opgegeven getal afgetrokken van elk element van het index object.

Openbare constanten

Naam Description
rangconstante Slaat de positie van het index object op.

Overnamehiërarchie

index

Opmerkingen

De index structuur vertegenwoordigt een coördinaatvector van N gehele getallen die een unieke positie in een N-dimensionale ruimte aangeeft. De waarden in de vector worden geordend van het belangrijkst naar het minst significant. U kunt de waarden van de onderdelen ophalen met behulp van operator=.

Requirements

Koptekst: amp.h

Naamruimte: Gelijktijdigheid

indexconstructor

Initialiseert een nieuw exemplaar van de indexklasse.

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

Parameterwaarden

_Array
Een eendimensionale matrix met de rangschikkingswaarden.

Ik
De indexlocatie in een eendimensionale index.

_I0
De lengte van de belangrijkste dimensie.

_I1
De lengte van de op een na meest significante dimensie.

_I2
De lengte van de minst significante dimensie.

_Andere
Een indexobject waarop het nieuwe indexobject is gebaseerd.

operator--

Elk element van het indexobject wordt verlaagd met één.

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

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

Retourwaarden

Voor de voorvoegseloperator, het indexobject (*this). Voor de operator voor achtervoegsel, een nieuw indexobject.

operator%=

Berekent de modulus (rest) van elk element in het indexobject wanneer dat element wordt gedeeld door het opgegeven getal.

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

Parameterwaarden

_Rhs
Het getal dat moet worden gedeeld door om de modulus te vinden.

Retourwaarde

Het indexobject.

operator*=

Vermenigvuldigt elk element in het indexobject met het opgegeven getal.

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

Parameterwaarden

_Rhs
Het getal dat moet worden vermenigvuldigd.

operator/=

Verdeelt elk element in het indexobject door het opgegeven getal.

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

Parameterwaarden

_Rhs
Het getal dat moet worden gedeeld door.

operator[]

Retourneert het onderdeel van de index op de opgegeven locatie.

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

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

Parameterwaarden

_Index
Een geheel getal van 0 tot en met de rang minus 1.

Retourwaarde

Het element dat zich op de opgegeven index bevindt.

Opmerkingen

In dit volgende voorbeeld worden de onderdeelwaarden van de index weergegeven.

// 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++

Hiermee wordt elk element van het indexobject verhoogd.

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

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

Retourwaarde

Voor de voorvoegseloperator, het indexobject (*this). Voor de operator voor achtervoegsel, een nieuw indexobject.

operator+=

Hiermee wordt het opgegeven getal toegevoegd aan elk element van het indexobject.

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

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

Parameterwaarden

_Rhs
Het getal dat moet worden toegevoegd.

Retourwaarde

Het indexobject.

operator=

Hiermee kopieert u de inhoud van het opgegeven indexobject naar dit object.

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

Parameterwaarden

_Andere
Het indexobject waaruit moet worden gekopieerd.

Retourwaarde

Een verwijzing naar dit indexobject.

operator-=

Hiermee wordt het opgegeven getal afgetrokken van elk element van het indexobject.

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

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

Parameterwaarden

_Rhs
Het te aftrekken getal.

Retourwaarde

Het indexobject.

Rang

Hiermee haalt u de rang van het indexobject op.

static const int rank = _Rank;

Zie ook

Concurrency-naamruimte (C++ AMP)