index, classe
Définit un vecteur d’index ndimensionnel.
Syntaxe
template <int _Rank>
class index;
Paramètres
_Rang
Rang ou nombre de dimensions.
Membres
Constructeurs publics
Nom | Description |
---|---|
constructeur d’index | Initialise une nouvelle instance de la classe index . |
Opérateurs publics
Nom | Description |
---|---|
operator-- | Décrémente chaque élément de l’objet index . |
operator%= | Calcule le module (reste) de chaque élément de l’objet index lorsque cet élément est divisé par un nombre. |
operator*= | Multiplie chaque élément de l’objet index par un nombre. |
operator/= | Divise chaque élément de l’objet index par un nombre. |
index ::operator[] | Retourne l’élément qui se trouve à l’index spécifié. |
operator++ | Incrémente chaque élément de l’objet index . |
operator+= | Ajoute le nombre spécifié à chaque élément de l’objet index . |
operator= | Copie le contenu de l’objet spécifié index dans celui-ci. |
operator-= | Soustrait le nombre spécifié de chaque élément de l’objet index . |
Constantes publiques
Nom | Description |
---|---|
constante de classement | Stocke le rang de l’objet index . |
Hiérarchie d'héritage
index
Notes
La index
structure représente un vecteur de coordonnées d’entiers N qui spécifie une position unique dans un espace ndimensionnel. Les valeurs du vecteur sont classées de la plus importante à la moins significative. Vous pouvez récupérer les valeurs des composants à l’aide de operator=.
Spécifications
En-tête : amp.h
Espace de noms : Concurrency
constructeur d’index
Initialise une nouvelle instance de la classe d’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);
Paramètres
_Tableau
Tableau unidimensionnel avec les valeurs de classement.
_I
Emplacement de l’index dans un index unidimensionnel.
_I0
Longueur de la dimension la plus importante.
_I1
Longueur de la dimension la plus importante à côté.
_I2
Longueur de la dimension la moins significative.
_Autre
Objet d’index sur lequel repose le nouvel objet d’index.
operator--
Décrémente chaque élément de l’objet index.
index<_Rank>& operator--() restrict(amp,cpu);
index operator--(
int
) restrict(amp,cpu);
Valeurs de retour
Pour l’opérateur de préfixe, l’objet index (*this
). Pour l’opérateur de suffixe, un nouvel objet d’index.
operator%=
Calcule le modulus (reste) de chaque élément de l’objet index lorsque cet élément est divisé par le nombre spécifié.
index<_Rank>& operator%=(
int _Rhs
) restrict(cpu, amp);
Paramètres
_Rhs
Nombre à diviser pour trouver le module.
Valeur de retour
Objet index.
operator*=
Multiplie chaque élément de l’objet d’index par le nombre spécifié.
index<_Rank>& operator*=(
int _Rhs
) restrict(amp,cpu);
Paramètres
_Rhs
Nombre à multiplier.
operator/=
Divise chaque élément de l’objet d’index par le nombre spécifié.
index<_Rank>& operator/=(
int _Rhs
) restrict(amp,cpu);
Paramètres
_Rhs
Nombre à diviser.
operator[]
Retourne le composant de l’index à l’emplacement spécifié.
int operator[] (
unsigned _Index
) const restrict(amp,cpu);
int& operator[] (
unsigned _Index
) restrict(amp,cpu);
Paramètres
_Index
Entier compris entre 0 et le rang moins 1.
Valeur de retour
Élément qui se trouve à l’index spécifié.
Notes
Cet exemple suivant affiche les valeurs de composant de l’index.
// 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++
Incrémente chaque élément de l’objet index.
index<_Rank>& operator++() restrict(amp,cpu);
index<_Rank> operator++(
int
) restrict(amp,cpu);
Valeur de retour
Pour l’opérateur de préfixe, l’objet index (*this
). Pour l’opérateur de suffixe, un nouvel objet d’index.
operator+=
Ajoute le nombre spécifié à chaque élément de l’objet d’index.
index<_Rank>& operator+=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator+=(
int _Rhs
) restrict(amp,cpu);
Paramètres
_Rhs
Nombre à ajouter.
Valeur de retour
Objet index.
opérateur =
Copie le contenu de l’objet d’index spécifié dans celui-ci.
index<_Rank>& operator=(
const index<_Rank>& _Other
) restrict(amp,cpu);
Paramètres
_Autre
Objet d’index à partir duquel copier.
Valeur de retour
Référence à cet objet d’index.
operator-=
Soustrait le nombre spécifié de chaque élément de l’objet index.
index<_Rank>& operator-=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator-=(
int _Rhs
) restrict(amp,cpu);
Paramètres
_Rhs
Nombre à soustraire.
Valeur de retour
Objet index.
Rank
Obtient le rang de l’objet index.
static const int rank = _Rank;