Namensräume
Varianten
Aktionen

std::set<Key,Compare,Allocator>::rend, std::set<Key,Compare,Allocator>::crend

Von cppreference.com
< cpp‎ | container‎ | set
 
 
 
 
reverse_iterator rend();
(1) (noexcept seit C++11)
const_reverse_iterator rend() const;
(2) (noexcept seit C++11)
const_reverse_iterator crend() const noexcept;
(3) (seit C++11)

Gibt einen Reverse-Iterator auf das Element zurück, das dem letzten Element des umgekehrten set folgt. Es entspricht dem Element, das dem ersten Element des nicht umgekehrten set vorangeht. Dieses Element fungiert als Platzhalter; der Versuch, darauf zuzugreifen, führt zu undefiniertem Verhalten.

range-rbegin-rend.svg

Inhalt

[edit] Rückgabewert

Reverse-Iterator auf das Element, das dem letzten Element folgt.

[edit] Komplexität

Konstant.

Anmerkungen

Da sowohl iterator als auch const_iterator konstante Iteratoren sind (und tatsächlich denselben Typ haben können), ist es nicht möglich, die Elemente des Containers über einen von diesen Member-Funktionen zurückgegebenen Iterator zu ändern.

libc++ backports crend() in den C++98-Modus.

[edit] Beispiel

#include <iostream>
#include <set>
 
int main()
{
    std::set<unsigned> rep{1, 2, 3, 4, 1, 2, 3, 4};
 
    for (auto it = rep.crbegin(); it != rep.crend(); ++it)
    {
        for (auto n = *it; n > 0; --n)
            std::cout << "⏼" << ' ';
        std::cout << '\n';
    }
}

Ausgabe

⏼ ⏼ ⏼ ⏼
⏼ ⏼ ⏼
⏼ ⏼
⏼

[edit] Siehe auch

gibt einen Reverse-Iterator zum Anfang zurück
(public member function) [edit]
(C++14)
gibt einen Reverse-End-Iterator für einen Container oder ein Array zurück
(function template) [bearbeiten]