Klasa slice_array
Wewnętrzny szablon klasy pomocniczej, który obsługuje slice
obiekty, zapewniając operacje między tablicami podzestawu zdefiniowanymi przez wycinek klasy valarray
.
Składnia
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
}
Uwagi
Klasa opisuje obiekt, który przechowuje odwołanie do obiektu klasy , wraz z obiektem klasy valarray<Type>
slice
, który opisuje sekwencję elementów do wybrania z valarray<Type>
obiektu.
Szablon klasy jest tworzony pośrednio przez niektóre valarray
operacje i nie można go używać bezpośrednio w programie. Wewnętrzny, pomocniczy szablon klasy używany przez operator indeksu slice
dolnego:
slice_array<Type> valarray<Type>::operator[]( slice )
.
Obiekt tworzy slice_array<Type>
się tylko przez napisanie wyrażenia formularza va[sl]
dla wycinka sl
tablicy valarray va
. Funkcje składowe klasy slice_array
zachowują się wtedy jak odpowiednie sygnatury funkcji zdefiniowane dla valarray<Type>
elementu , z tą różnicą, że dotyczy to tylko sekwencji wybranych elementów. Sekwencja kontrolowana przez slice_array
element jest definiowana przez trzy parametry slice
konstruktora, indeks pierwszego elementu w slice
obiekcie , liczbę elementów i odległość między elementami. slice_array
Wytnij z valarray
va
zadeklarowanego przez va[slice(2, 5, 3)]
zaznaczenie elementów z indeksami 2, 5, 8, 11 i 14 z va
. Indeksy muszą być prawidłowe, aby procedura jest prawidłowa.
Przykład
Zobacz przykład, aby zapoznać się z przykładem slice::slice
sposobu deklarowania i używania elementu slice_array
.
Wymagania
Header:<valarray>
Przestrzeń nazw: std