Compartilhar via


Método array_view::reinterpret_as

Reinterpreta o array_view por meio de array_view unidimensional, que, como uma opção, pode ter um tipo de valor diferente do array_view de origem.

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);

Parâmetros

  • _Value_type2
    O tipo de dados do novo objeto array_view.

Valor de retorno

Um objeto array_view ou um objeto ou um array_view const que é baseado neste array_view, com o tipo de elemento convertido de T a _Value_type2, e na classificação reduzida de N a 1.

Comentários

Às vezes, é conveniente exibir uma matriz multidimensional como uma matriz linear unidimensional que pode ter um tipo de valor diferente do tipo da matriz de origem. Você pode obter isso em um array_view usando este método.

Aviso

Reinterpretar um objeto array_view usando um tipo de valor diferente é uma operação potencialmente não segura.Essa funcionalidade deve ser usada com cuidado.

Veja um exemplo:

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);

Requisitos

Cabeçalho: amp.h

Namespace: Simultaneidade

Consulte também

Referência

Classe array_view