Namespaces
Variants

std::valarray<T>::end

De fr.cppreference.net
 
 
 
 
iterator       end();
(1) (depuis C++11)
const_iterator end() const;
(2) (depuis C++11)

Retourne un itérateur pointant vers l'élément suivant le dernier élément du tableau numérique.

L'itérateur retourné par cette fonction est invalidé lorsque la fonction membre resize() est appelée sur v ou lorsque la durée de vie de v se termine, selon la première éventualité.

Paramètres

v - un tableau numérique

Valeur de retour

Itérateur vers l'élément suivant le dernier élément du tableau numérique.

Exceptions

Peut lancer des exceptions définies par l'implémentation.

Notes

Contrairement aux autres fonctions qui prennent des arguments std::valarray, end() ne peut pas accepter les types de remplacement (tels que les types produits par les modèles d'expression) qui peuvent être retournés par des expressions impliquant des valarrays : (v1 + v2).end() n'est pas portable, std::valarray<T>(v1 + v2).end() doit être utilisé à la place.

L'intention de cette fonction est de permettre aux boucles for basées sur des plages de fonctionner avec les valarrays, et non de fournir une sémantique de conteneur.

Exemple

#include <algorithm>
#include <iostream>
#include <valarray>

int main()
{
    const std::valarray<char> va
    {
        'H', 'e', 'l', 'l', 'o', 
        ',', ' ', 
        'C', '+', '+', '!', '\n'
    };

    std::for_each(va.begin(), va.end(), [](char c){ std::cout << c; });
}

Sortie :

Hello, C++!

Rapports de défauts

Les rapports de défauts suivants, modifiant le comportement, ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Appliqué à Comportement tel que publié Comportement correct
LWG 2058 C++11 1. end() devait prendre en charge les types de remplacement
2. il n'était pas spécifié quand les itérateurs retournés seraient invalidés
1. non requis
2. spécifié
P3016R6 C++11 les fonctions non membres end() introduisaient une incohérence dans l'accès aux plages modifié end() en fonctions membres

Voir aussi

(C++11)
obtient l'itérateur de début de valarray
(fonction membre publique)