Udostępnij za pośrednictwem


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 sliceobiekcie , 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

Zobacz też

Bezpieczeństwo wątków w standardowej bibliotece języka C++