is_permutation
Détermine si les éléments d'une plage données forment une permutation valide. Une permutation est une série d'éléments dans lesquels tous les éléments qui testent la valeur vrai pour une condition précèdent les éléments qui retournent faux.
template<class FwdIt1, class FwdIt2>
bool is_permutation(FwdIt first1, FwdIt last1,
FwdIt first2);
template<class FwdIt1, class FwdIt2, class Pr>
bool is_permutation(FwdIt first1, FwdIt last1,
FwdIt first2, Pr pred);
Paramètres
first1
Un itérateur par progression qui fait référence au premier élément dans la plage spécifiée.last1
Un itérateur par progression qui correspond au dernier élément non inclus dans la plage spécifiée.first2
Un itérateur par progression qui fait référence au premier élément d'une deuxième plage, utilisé pour la comparaison.pred
Un attribut qui retourne bool.
Valeur de retour
true lorsque tous les éléments dans la plage données qui testent true pour une condition viennent avant que les éléments qui testent false; sinon, false.
Notes
La première fonction de modèle suppose qu'il y a autant d'éléments dans le début de la plage sur first2 qu'il y en a dans la plage affichée par [first1, last1). Retourne true uniquement si, pour chaque élément X dans la plage affichée par [first1last1), il y a autant d'éléments Y dans la même plage pour lesquels X == Y qu'il y en a dans la plage commençant à first2. Ici, operator== doit exécuter une comparaison par paire entre ses opérandes.
La deuxième fonction de modèle se comporte de la même, façon sauf qu'elle remplace operator==(X, Y) par pred(X, Y).
Configuration requise
En-tête : <algorithme>
Espace de noms : std