Freigeben über


is_permutation

Bestimmt, ob die Elemente in einem angegebenen Bereich eine gültige Permutation bilden. Eine ist Permutation Reihe von Elementen, in denen alle Elemente, die gilt für eine Bedingung testen Elemente vorausgehen, die false zurückgeben.

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);

Parameter

  • first1
    Ein Vorwärtsiterator, der das erste Element des angegebenen Bereichs auf.

  • last1
    Ein Vorwärtsiterator, der das nicht-inklusive letzte Element des angegebenen Bereichs auf.

  • first2
    Ein Vorwärtsiterator, der das erste Element eines zweiten Bereich verweist, verwendet für den Vergleich.

  • pred
    Ein Prädikat, das bool zurückgibt.

Rückgabewert

true, wenn alle Elemente im angegebenen Bereich, die true für eine Bedingung testen, vor allen Elementen sind, die false testen; andernfalls false.

Hinweise

Die erste Vorlagenfunktion wird davon ausgegangen, dass Elemente im Bereichsanfang bei first2 gibt, da es im Bereich gibt, der von festgelegt wird [first1, last1). Sie gibt nur true zurück, wenn, denn jedes Element X im Bereich, der von festgelegt wird [first1, last1) gibt so viele Elemente Y im selben Bereich befinden, für den x-== Y als dort im Bereichsanfang bei first2. Hier muss operator== einen paarweisen Vergleich zwischen den Operanden ausführen.

Die zweite Vorlagenfunktion verhält sich genauso, außer dass sie ersetzt operator==(X, Y) durch pred(X, Y).

Anforderungen

Header: <algorithm>

Namespace: std

Siehe auch

Referenz

<algorithm>

Standardvorlagenbibliothek