Namespaces
Variants

std::experimental::ranges:: prev

From cppreference.net
Défini dans l'en-tête <experimental/ranges/iterator>
namespace {

constexpr /* non spécifié */ prev = /* non spécifié */ ;

}
(ranges TS)
(objet de point de personnalisation)
Signature d'appel
template < Iterator I >
constexpr I prev ( I i ) ;
(1)
template < Iterator I >
constexpr I prev ( I i, ranges :: difference_type_t < I > n ) ;
(2)
template < Iterator I >
constexpr I prev ( I i, ranges :: difference_type_t < I > n, I bound ) ;
(3)

Décrémente l'itérateur i n fois, ou jusqu'à ce que bound soit atteint, selon ce qui arrive en premier, et retourne l'itérateur décrémenté.

1) Équivalent à -- i ; return i ; .
2) Équivalent à ranges:: advance ( i, - n ) ; return i ; .
3) Équivalent à ranges:: advance ( i, - n, bound ) ; return i ; .

Table des matières

Objets de point de personnalisation

Le nom ranges::prev désigne un objet de point de personnalisation , qui est un objet fonction d'un type de classe littéral Semiregular (désigné, à des fins d'exposition, comme PrevT ). Toutes les instances de PrevT sont égales. Ainsi, ranges::prev peut être copié librement et ses copies peuvent être utilisées de manière interchangeable.

Étant donné un ensemble de types Args... , si std:: declval < Args > ( ) ... satisfont aux exigences pour les arguments de ranges::prev ci-dessus, PrevT satisfera ranges :: Invocable < const PrevT, Args... > . Sinon, aucun opérateur d'appel de fonction de PrevT ne participe à la résolution de surcharge.

Dans chaque unité de traduction où ranges::prev est défini, il fait référence à la même instance de l'objet de point de personnalisation. (Cela signifie qu'il peut être utilisé librement dans des éléments comme les fonctions inline et les modèles de fonction sans violer la règle de définition unique .)

Valeur de retour

L'itérateur décrémenté.

Exemple

Voir aussi

(C++11)
décrémente un itérateur
(modèle de fonction)
avance un itérateur d'une distance donnée
(modèle de fonction)
incrémente un itérateur
(modèle de fonction)
retourne la distance entre un itérateur et un sentinelle, ou entre le début et la fin d'une plage
(modèle de fonction)