array::reinterpret_as – metoda
Opětovně interpretuje objekt array skrze jednorozměrný prvek array_view, který případně může mít jiný typ hodnoty, než zdrojový objekt array.
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);
Parametry
- _Value_type2
Datový typ vrácených dat.
Vrácená hodnota
Objekt array_view a objekt konstanty array_view, který je založen na array s typem elementu přetypovaným z T na ElementType a se stupněm zredukovaným z N na 1.
Poznámky
Někdy je vhodné zobrazit vícerozměrné pole jako by bylo lineární jednorozměrné pole, které může mít jiný typ hodnoty, než zdrojového pole.Toho lze dosáhnout použitím této metody.
Upozornění |
---|
Opětovná interpretace objektu array pomocí jiného typu hodnoty je potenciálně nebezpečná operace.Doporučujeme tuto funkci používat opatrně. |
Následující kód obsahuje 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