Sdílet prostřednictvím


array – třída

Představuje datový kontejner, který se používá k přesunutí dat na akcelerátor.

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

Parametry

  • _Value_type
    Typ elementu dat.

  • _Rank
    Řád objektu array.

Členy

Veřejné konstruktory

Název

Description

array::array – konstruktor

Inicializuje novou instanci třídy array.

array::~array – destruktor

Odstraní objekt array.

Veřejné metody

Název

Description

array::copy_to – metoda

Zkopíruje obsah objektu array do jiného objektu array.

array::data – metoda

Vrátí ukazatel na nezpracovaná data objektu array.

array::get_accelerator_view – metoda

Vrátí objekt accelerator_view, který představuje umístění, kde je daný objekt array umístěn.Tato vlastnost je přístupná pouze na CPU.

array::get_associated_accelerator_view – metoda

Vrátí druhý objekt accelerator_view, který je předán jako parametr při zavolání pracovního konstruktoru pro instanci objektu array.

array::get_cpu_access_type – metoda

Vrátí objekt access_type objektu array.Tato metoda je přístupná pouze na CPU.

array::get_extent – metoda

Vrátí objekt extent objektu array.

array::reinterpret_as – metoda

Vrátí jednorozměrné pole obsahující všechny prvky v objektu array.

array::section – metoda

Vrátí dílčí část objektu array nacházející se na zadaném umístění a volitelně také se zadaným rozsahem.

array::view_as – metoda

Vrací objekt array_view, který je vytvořen z objektu array.

Veřejné operátory

Název

Description

array::operator std::vector<_Value_type> – operátor

Používá copy(*this, vector) pro implicitní převod pole na vektorový objekt std::vector.

array::operator() – operátor

Vrátí hodnotu prvku určeného parametry.

array::operator[] – operátor

Vrátí hodnotu prvku na zadaném indexu.

array::operator= – operátor

Zkopíruje obsah zadaného objektu array do tohoto objektu.

Veřejné konstanty

Název

Description

array::rank – konstanta

Udržuje řád objektu array.

Veřejné datové členy

Název

Description

array::accelerator_view – datový člen

Získá objekt accelerator_view představující umístění, na kterém je objektu array vyhrazena paměť.Tato vlastnost je přístupná pouze na CPU.

array::associated_accelerator_view – datový člen

Vrátí druhý objekt accelerator_view, který je předán jako parametr při zavolání pracovního konstruktoru pro instanci objektu array.

array::cpu_access_type Data – datový člen

Získá access_type, který představuje, jak procesor může získat přístup k úložišti pole.

array::extent – datový člen

Vrátí rozsah, který definuje tvar objektu array.

Poznámky

Typ array<T,N> odpovídá hustému a pravidelnému (nikoli roztřepenému) N-rozměrnému objektu array, který je umístěný v určitém umístění, například akcelerátoru nebo procesoru.Datový typ elementů v objektu array je T, který musí být typu, který je kompatibilní s cílovým akcelerátorem.I přes řád je N objektu array určeno staticky a je součástí typu, v rozsahu objektu array je určeno modulem runtime a je vyjádřeno pomocí třídy extent<N>.

Objekt array může mít libovolný počet dimenzí, i když některé funkce jsou specializované pro objekty array s hodností jeden, dva a tři.Pokud vynecháte argument dimenze, výchozí hodnota je 1.

Data objektu array jsou uložena souvisle v paměti.Prvky, které se liší jednou nejméně významnou dimenzí, v paměti sousedí.

Objekty array jsou logicky považovány za hodnotové typy, protože když je objekt array zkopírován do jiného objektu array, provádí se hluboká kopie.Dva objekty array nikdy neukazují na stejná data.

Typ array<T,N> se používá v několika situacích:

  • Jako datový zásobník, který lze použít při výpočtech na akcelerátoru.

  • Jako datový zásobník pro uložení paměti v procesoru hostitele (které lze kopírovat do a z jiných objektů array).

  • Jako pracovní objekt, který slouží jako rychlý zprostředkovatel při kopiích z hostitele do zařízení.

Hierarchie dědičnosti

array

Požadavky

Hlavička: amp.h

Obor názvů: Souběžnost

Viz také

Referenční dokumentace

Obor názvů souběžnosti (C++ AMP)