Sdílet prostřednictvím


Třída Array

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

Hh305242.collapse_all(cs-cz,VS.110).gifVeřejné konstruktory

Název

Description

Konstruktor Array::Array

Vytvoří novou instanci třídy array.

pole:: ~ objekt array

Odstraní z paměti objekt array.

Hh305242.collapse_all(cs-cz,VS.110).gifVeřejné metody

Název

Metoda Array::copy_to

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

Metoda Array::data

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

Metoda Array::get_accelerator_view

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.

Metoda Array::get_associated_accelerator_view

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

Metoda Array::get_extent

Vrátí objekt extent objektu array.

Metoda Array::reinterpret_as

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

Metoda Array::Section

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

Metoda Array::view_as

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

Hh305242.collapse_all(cs-cz,VS.110).gifVeřejné operátory

Název

Array::Operator std::vector <_Value_type> Operátor

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

Array::Operator() operátora

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.

Hh305242.collapse_all(cs-cz,VS.110).gifVeřejné konstanty

Název

Array::RANK konstanta

Udržuje řád objektu array.

Hh305242.collapse_all(cs-cz,VS.110).gifVeřejné datové členy

Název

Datový člen Array::accelerator_view

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.

Datový člen Array::associated_accelerator_view

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

Datový člen Array::extent

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čkový soubor: amp.h

Obor názvů: Concurrency

Viz také

Referenční dokumentace

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