Partager via


array, classe

Représente un conteneur de données utilisé pour déplacer des données vers un accélérateur.

template <
   typename _Value_type,
   int _Rank
>
friend class array;

Paramètres

  • _Value_type
    Type de données de l'élément.

  • _Rank
    Rang du tableau.

Membres

Constructeurs publics

Nom

Description

array::array, constructeur

Initialise une nouvelle instance de la classe array.

array::~array, destructeur

Détruit l'objet array.

Méthodes publiques

Nom

Description

array::copy_to, méthode

Copie le contenu du tableau dans un autre tableau.

array::data, méthode

Retourne un pointeur vers les données brutes du tableau.

array::get_accelerator_view, méthode

Retourne l'objet accelerator_view qui représente l'emplacement où le tableau est alloué. Cette propriété est accessible uniquement sur le CPU.

array::get_associated_accelerator_view, méthode

Obtient le deuxième objet accelerator_view passé en paramètre au constructeur temporaire appelé pour instancier l'objet array.

array::get_cpu_access_type, méthode

Retourne l'access_type du tableau. Cette méthode est accessible uniquement sur le CPU.

array::get_extent, méthode

Retourne l'objet extent du tableau.

array::reinterpret_as, méthode

Retourne un tableau unidimensionnel qui contient tous les éléments de l'objet array.

array::section, méthode

Retourne une sous-section de l'objet array qui est à l'origine spécifiée et, éventuellement, qui a l'étendue spécifiée.

array::view_as, méthode

Retourne un objet array_view qui est construit depuis l'objet array.

Opérateurs publics

Nom

Description

array::operator std::vector<_Value_type>, opérateur

Utilise copy(*this, vector) pour convertir implicitement le tableau en un objet std::vector.

array::operator(), opérateur

Retourne la valeur de l'élément qui est spécifiée par les paramètres.

array::operator[], opérateur

Retourne l'élément à l'index spécifié.

array::operator=, opérateur

Copie le contenu de l'objet array spécifié dans cet objet.

Constantes publiques

Nom

Description

array::rank, constante

Stocke le rang du tableau.

Données membres publiques

Nom

Description

array::accelerator_view, données membres

Obtient l'objet accelerator_view qui représente l'emplacement où le tableau est alloué. Cette propriété est accessible uniquement sur le CPU.

array::associated_accelerator_view, données membres

Obtient le deuxième objet accelerator_view passé en paramètre au constructeur temporaire appelé pour instancier l'objet array.

array::cpu_access_type, membre de données

Obtient l'access_type qui indique comment le processeur peut accéder au stockage du tableau.

array::extent, données membres

Obtient l'extent qui définit la forme du tableau.

Remarques

Le type array<T,N> représente un tableau dense et régulier de dimensions (non-multidimensionnel) N qui se trouve dans un emplacement spécifique, tel qu'un accélérateur ou le CPU. Le type de données des éléments dans le tableau est T, qui doit être d'un type compatible avec l'accélérateur cible. Bien que le rang, N, (du tableau est déterminé statiquement et fait partie du type, l'extent du tableau est déterminée par le runtime et est exprimée en utilisant la classe extent<N>.

Un tableau peut avoir plusieurs dimensions, bien que certaines fonctionnalités soient spécialisées pour les objets array avec le rang un, deux, et trois. Si vous omettez l'argument de dimension, la valeur par défaut est 1.

Les données de tableau sont présentées de manière contigu dans la mémoire. Les éléments qui diffèrent par un dans la dimension la moins significative sont adjacents dans la mémoire.

Les tableaux sont logiquement considérées comme des types value, car lorsqu'un tableau est copié dans un autre tableau, une copie complète est exécutée. Deux tableaux ne désignent jamais les mêmes données.

Le type array<T,N> est utilisé dans plusieurs scénarios :

  • Comme conteneur de données qui peut être utilisé dans les calculs sur un accélérateur.

  • Comme conteneur de données pour stocker la mémoire sur le CPU hôte (qui peut être utilisée pour copier vers et depuis d'autres tableaux).

  • Comme un objet temporaire sert d'intermédiaire rapide dans l'hôte-à- périphérique copie.

Hiérarchie d'héritage

array

Configuration requise

En-tête : amp.h

Espace de noms d'accès : Concurrency

Voir aussi

Référence

Concurrency, espace de noms (C++ AMP)