Udostępnij za pośrednictwem


array — Klasa

Reprezentuje kontener danych służący do przenoszenia danych do akceleratora.

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

Parametry

  • _Value_type
    Typ elementu danych.

  • _Rank
    Ranga tablicy.

Elementy członkowskie

Konstruktory publiczne

Nazwa

Opis

array::array — Konstruktor

Inicjuje nowe wystąpienie klasy array.

array::~array — Destruktor

Niszczy obiekt array.

Metody publiczne

Nazwa

Opis

array::copy_to — Metoda

Kopiuje zawartość obiektu array do innego obiektu array.

array::data — Metoda

Zwraca wskaźnik do danych pierwotnych tablicy.

array::get_accelerator_view — Metoda

Zwraca obiekt accelerator_view reprezentujący lokalizację, w której zaalokowano tablicę.Dostęp do właściwości możliwy jest tylko na procesorze CPU.

array::get_associated_accelerator_view — Metoda

Pobiera drugi obiekt accelerator_view, który jest przekazywany jako parametr gdy wywołany zostanie konstruktor tymczasowy do utworzenia wystąpienia obiektu array.

array::get_cpu_access_type — Metoda

Zwraca access_type tablicy.Dostęp do tej metody możliwy jest tylko na procesorze CPU.

array::get_extent — Metoda

Zwraca obiekt extent dla tablicy.

array::reinterpret_as — Metoda

Zwraca jednowymiarową tablicę, która zawiera wszystkie elementy w obiekcie array.

array::section — Metoda

Zwraca podsekcję obiektu array który znajduje się w określonej lokalizacji i opcjonalnie ma określony zakres.

array::view_as — Metoda

Zwraca obiekt array_view, który jest zbudowany z obiektu array.

Operatory publiczne

Nazwa

Opis

array::operator std::vector<_Value_type> — Operator

Wykorzystuje copy(*this, vector), aby niejawnie przekonwertować tablicę do obiektu wektora std::vector.

array::operator() Operator

Zwraca wartość elementu, która jest określona przez parametry.

array::operator[] Operator

Zwraca element, który jest wskazywany przez określony indeks.

array::operator= Operator

Kopiuje zawartość określonego obiektu array do wskazanego.

Publiczne stałe

Nazwa

Opis

array::rank — Stała

Przechowuje rangę tablicy.

Publiczne elementy członkowskie danych

Nazwa

Opis

array::accelerator_view — Członek danych

Pobiera obiekt accelerator_view reprezentujący lokalizację, w której zaalokowano tablicę.Dostęp do właściwości możliwy jest tylko na procesorze CPU.

array::associated_accelerator_view — Członek danych

Pobiera drugi obiekt accelerator_view, który jest przekazywany jako parametr gdy wywołany zostanie konstruktor tymczasowy do utworzenia wystąpienia obiektu array.

array::cpu_access_type — Członek danych

Pobiera atrybut access_type, który reprezentuje, jak procesor może mieć dostęp do magazynu tablicy.

array::extent — Członek danych

Pobiera zakres, który definiuje kształt tablicy.

Uwagi

Typ array<T,N> reprezentuje gęstą i regularną (niepostrzępioną) N-wymiarową tablicę znajdującą się w określonej lokalizacji, na przykład w akceleratorze lub procesorze CPU.Typ danych elementów w tablicy to T, który musi być zgodny z akceleratorem docelowego typu.Mimo rangi N (z tablicy jest określana statycznie i jest częścią typu), zakres tablicy jest ustalany w czasie wykonywania i jest wyrażany za pomocą klasy extent<N>.

Tablica może mieć dowolną liczbę wymiarów, chociaż niektóre funkcje są ukierunkowane na obiekty array o liczbie wymiarów równej jeden, dwa lub trzy.Jeśli pominięto argument wymiaru, wartość domyślna to 1.

Dane tablicy są rozmieszczone jako obszar ciągły w pamięci.Elementy, które różnią się o jeden w najmniej znaczącym wymiarze, sąsiadują ze sobą w pamięci.

Tablice są logicznie uznawane za typy wartości, ponieważ podczas kopiowania tablicy do innej tablicy wykonywana jest głęboka kopia.Dwie tablice nigdy nie wskazują na te same dane.

Typ array<T,N> jest używany w kilku przypadkach:

  • Jako kontener danych, który może być używany w obliczeniach na akceleratorze.

  • Jako kontener danych do przechowywania pamięci na hoście procesora (który można skopiować do i z innych tablic).

  • Jako tymczasowy obiekt w roli szybkiego pośrednika w kopiowaniu danych z hosta na urządzenia.

Hierarchia dziedziczenia

array

Wymagania

Nagłówek: amp.h

Przestrzeń nazw: Concurrency

Zobacz też

Informacje

Przestrzeń nazw współbieżności (C++ AMP)