Namespaces
Variants

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

De fr.cppreference.net

 
 
 
 
reverse_iterator rend();
(1) (noexcept depuis C++11)
(constexpr depuis C++20)
const_reverse_iterator rend() const;
(2) (noexcept depuis C++11)
(constexpr depuis C++20)
const_reverse_iterator crend() const noexcept;
(3) (depuis C++11)
(constexpr depuis C++20)

Retourne un itérateur inverse vers l'élément suivant le dernier élément du vector inversé. Il correspond à l'élément précédant le premier élément du vector non inversé. Cet élément agit comme un espace réservé, toute tentative d'y accéder entraîne un comportement indéfini.

Valeur de retour

Itérateur inverse vers l'élément suivant le dernier élément.

Complexité

Constante.

Notes

libc++ rétroporte crend() au mode C++98.

Exemple

#include <algorithm>
#include <cassert>
#include <iostream>
#include <numeric>
#include <string>
#include <vector>

int main()
{
    std::vector<int> nums{1, 2, 4, 8, 16};
    std::vector<std::string> fruits{"orange", "apple", "raspberry"};
    std::vector<char> empty;

    // Print vector nums.
    std::for_each(nums.crbegin(), nums.crend(),
                  [](const int n) { std::cout << n << ' '; });
    std::cout << '\n';

    // Sum all integers in the vector nums, printing only the result.
    std::cout << "Sum of nums: "
              << std::accumulate(nums.crbegin(), nums.crend(), 0) << '\n';

    // Print the last fruit in the vector fruits, checking if there is any.
    if (!fruits.empty())
        std::cout << "Last fruit: " << *fruits.crbegin() << '\n';

    if (empty.crbegin() == empty.crend())
        std::cout << "vector ‘empty’ is indeed empty.\n";

    // Modify the last element in nums.
    *nums.rbegin() = 32;
    assert(*nums.crbegin() == 32);
}

Sortie :

16 8 4 2 1
Sum of nums: 31
Last fruit: raspberry
vector ‘empty’ is indeed empty.

Voir aussi

retourne un itérateur inverse vers le début
(fonction membre publique)
(C++14)
retourne un itérateur inverse de fin pour un conteneur ou un tableau
(fonction template)