Namensräume
Varianten
Aktionen

std::list<T,Allocator>::rend, std::list<T,Allocator>::crend

Von cppreference.com
< cpp‎ | container‎ | list
 
 
 
 
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 der umgedrehten list folgt. Es entspricht dem Element, das dem ersten Element der nicht umgedrehten list 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

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

[edit] Beispiel

#include <algorithm>
#include <iostream>
#include <numeric>
#include <string>
#include <list>
 
int main()
{
    std::list<int> nums{1, 2, 4, 8, 16};
    std::list<std::string> fruits{"orange", "apple", "raspberry"};
    std::list<char> empty;
 
    // Print list.
    std::for_each(nums.rbegin(), nums.rend(), [](const int n) { std::cout << n << ' '; });
    std::cout << '\n';
 
    // Sums all integers in the list nums (if any), printing only the result.
    std::cout << "Sum of nums: "
              << std::accumulate(nums.rbegin(), nums.rend(), 0) << '\n';
 
    // Prints the first fruit in the list fruits, checking if there is any.
    if (!fruits.empty())
        std::cout << "First fruit: " << *fruits.rbegin() << '\n';
 
    if (empty.rbegin() == empty.rend())
        std::cout << "list 'empty' is indeed empty.\n";
}

Ausgabe

16 8 4 2 1
Sum of nums: 31
First fruit: raspberry
list 'empty' is indeed empty.

[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]