array_view::reinterpret_as – metoda
Opětovně interpretuje objekt array_view skrze jednorozměrný prvek array_view, který případně může mít jiný typ hodnoty, než zdrojový prvek array_view.
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);
Parametry
- _Value_type2
Datový typ nového objektu array_view.
Vrácená hodnota
Objekt array_view nebo objekt konstanty array_view založený na tomto objektu array_view s typem prvků převedeným z typu T na typ _Value_type2 a řádem redukovaným z N na 1.
Poznámky
Někdy je vhodné zobrazit vícerozměrné pole jako lineární jednorozměrné pole, které může mít jiný typ hodnoty, než zdrojového pole.Toho lze dosáhnout v array_view použitím této metody.
Upozornění |
---|
Opětovná interpretace objektu array_view pomocí jiného typu hodnoty je potenciálně nebezpečná operace.Tato funkce by měla být používána opatrně. |
Zde je příklad:
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);
Požadavky
Hlavička: amp.h
Obor názvů: Souběžnost