gslice_array Class
Una clase de plantilla interna, auxiliar que admite objetos generales del segmento proporcionando operaciones entre matrices de subconjunto definido por el segmento general de un valarray.
template<class Type>
class gslice_array : public gsplice {
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
}
Comentarios
La clase describe un objeto que almacena una referencia a un objeto va de la clase valarray <tipo> , junto con un objeto gs de la clase gslice que describe la secuencia de elementos para seleccionar del objeto de <tipo> valarray .
Se crea un objeto de <tipo> gslice_array sólo escribiendo una expresión de formulario va [gs].Las funciones miembro de clases gslice_array se comportan como las firmas correspondientes de la función definido para <tipo> valarray, excepto que sólo la secuencia de elementos seleccionados se verá afectada.
La clase de plantilla se crea indirectamente en ciertas operaciones valarray y no se pueden usar directamente en el programa.Una clase de plantilla auxiliar interno en su lugar utiliza el operador de subíndice de segmento:
gslice_array<Type>valarray <Type>::operator[] (gslice&const).
Se crea un objeto de <tipo> gslice_array sólo escribiendo una expresión de formulario va [gsl], para un segmento gsl de vavalarray.Las funciones miembro de clases gslice_array se comportan como las firmas correspondientes de la función definido para <tipo> valarray, excepto que sólo la secuencia de elementos seleccionados se verá afectada.La secuencia controlada por el gslice_array está definido por los tres parámetros del constructor del segmento, el índice del primer elemento del primer segmento, el número de elementos de cada segmento, y la distancia entre los elementos de cada segmento.
En el ejemplo siguiente:
const size_t lv[] = {2, 3};
const size_t dv[] = {7, 2};
const valarray<size_t> len(lv, 2), str(dv, 2);
// va[gslice(3, len, str)] selects elements with
// indices 3, 5, 7, 10, 12, 14
los índices deben ser válidos para que el procedimiento sea válidos.
Ejemplo
Vea el ejemplo para gslice:: gslice para obtener un ejemplo de cómo declarar y utilizar un slice_array.
Requisitos
encabezado: <valarray>
espacio de nombres: std