slice_array-Klasse
Eine interne, zusätzliche Vorlagenklasse, die Sliceobjekte unterstützt, indem Vorgänge zwischen Teilmengenarrays bereitstellt, definierte durch den Segment eines Wertarrays.
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
}
Hinweise
Die Klasse beschreibt ein Objekt, das einen Verweis auf ein Objekt der Klasse Array von Werten<Typ>, zusammen mit einem Objekt der Klasse Segment speichert, die die Sequenz der Elemente beschrieben, die dem valarray <Type>-Objekt auszuwählen.
Die Vorlagenklasse wird indirekt durch bestimmte Wertarrayvorgänge erstellt und kann nicht direkt im Programm verwendet werden. Eine interne, zusätzliche Vorlagenklasse, die vom tiefgestellten Operator des Slices verwendet wird:
::<operator[] > (<slice)slice_arrayTypvalarrayTyp.
Sie erstellen ein slice_array <Type>-Objekt, indem Sie nur einen Ausdruck des Formulars VA [SL], für ein Segment sl des Wertarrays va schreiben. Die Memberfunktionen der Klasse slice_array dann verhalten sich wie die entsprechenden Funktionssignaturen, für die valarray <Type> definiert werden, dass nur die Reihenfolge der ausgewählten Elemente wird beeinflusst. Die Sequenz, die vom slice_array gesteuert wird, wird durch die drei Parameter des Slicekonstruktors, Index des ersten Elements im Segment, der Anzahl von Elementen und des Abstands zwischen Elementen definiert. Ein slice_array Ausschneiden vom Wertarray va deklariert durch va[slice(2, 5, 3)] wählt Elemente mit den Indizes 2, 5, 8, 11 und 14 von va. Die Indizes müssen gültig werden, dass die Prozedur gültig ist.
Beispiel
Im Beispiel für slice::slice als Beispiel, wie ein slice_array deklariert und verwendet.
Anforderungen
Header: <valarray>
Namespace: std