array_view::reinterpret_as-Methode
Interpretiert das array_view-Objekt durch ein eindimensionales array_view-Objekt neu, das als Option einen anderen Werttyp als das array_view-Quellobjekt haben kann.
template <
typename _Value_type2
>
array_view<_Value_type2, _Rank> reinterpret_as() const restrict(amp,cpu);
template <
typename _Value_type2
>
array_view<const _Value_type2, _Rank> reinterpret_as() const restrict(amp,cpu);
Parameter
- _Value_type2
Der Datentyp des neuen array_view-Objekts.
Rückgabewert
Ein array_view-Objekt oder ein const-array_view-Objekt, das auf diesem array_view-Objekt basiert, wobei der Elementtyp von T in _Value_type2 konvertiert wird und der Rang von N auf 1 reduziert wird.
Hinweise
Manchmal ist es hilfreich, ein mehrdimensionales Array als lineares, eindimensionales Array anzuzeigen, das einen anderen Werttyp als das Quellarray haben kann. Dies kann auf einem array_view-Objekt mit dieser Methode erzielt werden.
Warnung
Ein array_view-Objekt mithilfe eines anderen Werttyps neu zu interpretieren, ist ein potenziell unsicherer Vorgang.Diese Funktion sollte sorgfältig verwendet werden.
Im Folgenden ein Beispiel:
struct RGB { float r; float g; float b; };
array<RGB,3> a = ...;
array_view<float,1> v = a.reinterpret_as<float>();
assert(v.extent == 3*a.extent);
Anforderungen
Header: amp.h
Namespace: Nebenläufigkeit