Classe slice_array
Uma classe interna, auxiliar do modelo que da suporte a objetos do intervalo fornecendo operações entre as matrizes de subconjunto definido pela fração de um valarray.
template<class Type>
class slice_array : public slice {
public:
typedef Type value_type;
void operator=(
const valarray<Type>& x
) const;
void operator=(
const Type& x
) const;
void operator*=(
const valarray<Type>& x
) const;
void operator/=(
const valarray<Type>& x
) const;
void operator%=(
const valarray<Type>& x
) const;
void operator+=(
const valarray<Type>& x
) const;
void operator-=(
const valarray<Type>& x
) const;
void operator^=(
const valarray<Type>& x
) const;
void operator&=(
const valarray<Type>& x
) const;
void operator|=(
const valarray<Type>& x
) const;
void operator<<=(
const valarray<Type>& x
) const;
void operator>>=(
const valarray<Type>& x
) const;
// The rest is private or implementation defined
}
Comentários
A classe descreve um objeto que armazena uma referência a um objeto da classe valarray<Tipo>, junto com um objeto da classe fatia, que descreve a sequência de elementos para selecionar do objeto de valarray<Type> .
A classe do modelo é criada indiretamente por determinadas operações valarray e não pode ser usada diretamente no programa. Uma classe interna, auxiliar de modelo usada pelo operador subscrito de fatias:
::<operator[] > deslice_array<TipovalarrayTipo(slice).
Cria um objeto de slice_array<Type> somente escrevendo uma expressão de formato SL va [], para uma fatia sl de vavalarray. As funções de membro da classe slice_array se comportam como as assinaturas correspondentes de função definidas para valarray<Type>, com exceção de que somente a sequência de elementos selecionados é afetada. A sequência controlada por slice_array é definida pelos três parâmetros do construtor de intervalo, do índice do primeiro elemento da fatia, o número de elementos, e a distância entre os elementos. Um slice_array divisão de va valarray declarado por va[slice(2, 5, 3)] seleciona os elementos com índices, 2, 5, 8, 11 e 14 de va. Os índices devem ser válidas para que o procedimento seja válidos.
Exemplo
Consulte o exemplo de slice::slice para obter um exemplo de como declarar e usar um slice_array.
Requisitos
Cabeçalho: <valarray>
Namespace: std