std:: rbegin, std:: crbegin
|
Défini dans l'en-tête
<array>
|
||
|
Défini dans l'en-tête
<deque>
|
||
|
Défini dans l'en-tête
<flat_map>
|
||
|
Défini dans l'en-tête
<flat_set>
|
||
|
Défini dans l'en-tête
<forward_list>
|
||
|
Défini dans l'en-tête
<inplace_vector>
|
||
|
Défini dans l'en-tête
<iterator>
|
||
|
Défini dans l'en-tête
<list>
|
||
|
Défini dans l'en-tête
<map>
|
||
|
Défini dans l'en-tête
<regex>
|
||
|
Défini dans l'en-tête
<set>
|
||
|
Défini dans l'en-tête
<span>
|
||
|
Défini dans l'en-tête
<string>
|
||
|
Défini dans l'en-tête
<string_view>
|
||
|
Défini dans l'en-tête
<unordered_map>
|
||
|
Défini dans l'en-tête
<unordered_set>
|
||
|
Défini dans l'en-tête
<vector>
|
||
|
template
<
class
C
>
auto rbegin ( C & c ) - > decltype ( c. rbegin ( ) ) ; |
(1) |
(depuis C++14)
(constexpr depuis C++17) |
|
template
<
class
C
>
auto rbegin ( const C & c ) - > decltype ( c. rbegin ( ) ) ; |
(2) |
(depuis C++14)
(constexpr depuis C++17) |
|
template
<
class
T,
std::
size_t
N
>
std:: reverse_iterator < T * > rbegin ( T ( & array ) [ N ] ) ; |
(3) |
(depuis C++14)
(constexpr depuis C++17) |
|
template
<
class
T
>
std:: reverse_iterator < const T * > rbegin ( std:: initializer_list < T > il ) ; |
(4) |
(depuis C++14)
(constexpr depuis C++17) |
|
template
<
class
C
>
auto crbegin ( const C & c ) - > decltype ( std :: rbegin ( c ) ) ; |
(5) |
(depuis C++14)
(constexpr depuis C++17) |
Retourne un itérateur vers le début inverse de la plage donnée.
Table des matières |
Paramètres
| c | - |
un conteneur ou une vue avec une fonction membre
rbegin
|
| array | - | un tableau de type arbitraire |
| il | - | un std:: initializer_list |
Valeur de retour
Exceptions
Peut lever des exceptions définies par l'implémentation.
Surcharges
Des surcharges personnalisées de
rbegin
peuvent être fournies pour les classes et les énumérations qui n'exposent pas de fonction membre
rbegin()
appropriée, mais qui peuvent être parcourues en itération.
|
Les surcharges de
|
(depuis C++20) |
Notes
La surcharge pour
std::initializer_list
est nécessaire car elle ne possède pas de fonction membre
rbegin
.
Exemple
#include <iostream> #include <iterator> #include <vector> int main() { std::vector<int> v = {3, 1, 4}; auto vi = std::rbegin(v); // le type de "vi" est std::vector<int>::reverse_iterator std::cout << "*vi = " << *vi << '\n'; *std::rbegin(v) = 42; // OK : après l'affectation v[2] == 42 // *std::crbegin(v) = 13; // erreur : l'emplacement est en lecture seule int a[] = {-5, 10, 15}; auto ai = std::rbegin(a); // le type de "ai" est std::reverse_iterator<int*> std::cout << "*ai = " << *ai << '\n'; auto il = {3, 1, 4}; // le type de "it" ci-dessous est std::reverse_iterator<int const*> : for (auto it = std::rbegin(il); it != std::rend(il); ++it) std::cout << *it << ' '; std::cout << '\n'; }
Sortie :
*vi = 4 *ai = 15 4 1 3
Voir aussi
|
(C++11)
(C++14)
|
retourne un itérateur vers le début d'un conteneur ou d'un tableau
(modèle de fonction) |
|
(C++11)
(C++14)
|
retourne un itérateur vers la fin d'un conteneur ou d'un tableau
(modèle de fonction) |
|
(C++14)
|
retourne un itérateur inverse de fin pour un conteneur ou un tableau
(modèle de fonction) |
|
(C++20)
|
retourne un itérateur inverse vers une plage
(objet de point de personnalisation) |
|
(C++20)
|
retourne un itérateur inverse vers une plage en lecture seule
(objet de point de personnalisation) |