Freigeben über


array::reinterpret_as-Methode

Interpretiert das Array durch ein eindimensionales array_view-Objekt neu, das wahlweise einen anderen Werttyp als das Quellarray hat.

template <
   typename _Value_type2
>
array_view<_Value_type2,1> reinterpret_as()restrict(amp,cpu);

template <
   typename _Value_type2
>
array_view<const _Value_type2,1> reinterpret_as() const restrict(amp,cpu);

Parameter

  • _Value_type2
    Der Datentyp der zurückgegebenen Daten.

Rückgabewert

Ein array_view- oder const-array_view-Objekt, das auf dem array-Objekt basiert, wobei der Elementtyp von T in ElementType neu interpretiert wird und der Rang von N auf 1 herabgesetzt wird.

Hinweise

Manchmal ist es hilfreich, ein mehrdimensionales Array so anzuzeigen, als wäre es ein lineares, eindimensionales Array, möglicherweise mit einem anderen Werttyp als das Quellarray. Sie können dazu diese Methode verwenden.

Warnung

Ein Arrayobjekt mithilfe eines anderen Werttyps neu zu interpretieren, ist ein potenziell unsicherer Vorgang.Es empfiehlt sich, diese Funktion mit Bedacht zu verwenden.

Der folgende Code veranschaulicht dies.

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

Siehe auch

Referenz

Arrayklasse