Partager via


Classe slice_array

Modèle de classe auxiliaire interne qui prend en charge slice les objets en fournissant des opérations entre des tableaux de sous-ensembles définis par la tranche d’un valarray.

Syntaxe

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
}

Notes

La classe décrit un objet qui stocke une référence à un objet de classe valarray<Type>, ainsi qu’un objet de classe slice, qui décrit la séquence d’éléments à sélectionner dans l’objet valarray<Type> .

Le modèle de classe est créé indirectement par certaines valarray opérations et ne peut pas être utilisé directement dans le programme. Modèle de classe auxiliaire interne utilisé par l’opérateur d’indice slice :

slice_array<Type> valarray<Type>::operator[]( slice ).

Vous construisez un slice_array<Type> objet uniquement en écrivant une expression du formulaire va[sl], pour une tranche sl de valarray va. Les fonctions membres de la classe slice_array se comportent ensuite comme les signatures de fonction correspondantes définies pour valarray<Type>, sauf que seule la séquence d’éléments sélectionnés est affectée. La séquence contrôlée par le slice_array paramètre est définie par les trois paramètres du slice constructeur, l’index du premier élément du slice, le nombre d’éléments et la distance entre les éléments. Une slice_array coupe à partir valarray va de déclarée par va[slice(2, 5, 3)] sélectionne des éléments avec des indices 2, 5, 8, 11 et 14 de va. Les index doivent être valides pour que la procédure soit valide.

Exemple

Consultez l’exemple pour slice::slice obtenir un exemple de déclaration et d’utilisation d’un slice_array.

Spécifications

Header :<valarray>

Espace de noms : std

Voir aussi

Sécurité des threads dans la bibliothèque standard C++