reverse_iterator rbegin(); // (1) C++03
reverse_iterator rbegin() noexcept; // (1) C++11
const_reverse_iterator rbegin() const; // (2) C++03
const_reverse_iterator rbegin() const noexcept; // (2) C++11
概要
map
コンテナ内の末尾を指す逆イテレータを取得する。
内部的に、map
コンテナは各要素をキーの値に従って下位から上位へと並べており、従って rbegin()
は最上位のキーにあたる値を指すイテレータを返す。
rbegin()
は end()
と同じ要素を指すわけではなく、その前の要素を指すことに注意。
戻り値
反転したシーケンスの先頭を指す逆イテレータ。
reverse_iterator
と const_reverse_iterator
はともにメンバ型である。map
クラステンプレートにおいて、これらは逆双方向イテレータであり、それぞれ reverse_iterator<iterator>
, reverse_iterator<const_iterator>
と定義される。
計算量
定数時間。
例
#include <iostream>
#include <map>
int main()
{
std::map<int, char> m;
m.insert(std::make_pair(5, 'e'));
m.insert(std::make_pair(2, 'b'));
m.insert(std::make_pair(4, 'd'));
m.insert(std::make_pair(1, 'a'));
m.insert(std::make_pair(1, 'a'));
std::map<int,char>::reverse_iterator i = m.rbegin();
for( ; i != m.rend() ; ++i )
std::cout << i->first << " " << i->second << std::endl;
return 0;
}
出力
5 e
4 d
2 b
1 a
処理系
- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: 2012 ✅
関連項目
名前 | 説明 |
---|---|
map::begin |
先頭を指すイテレータを取得する |
map::end |
末尾の次を指すイテレータを取得する |
map::cbegin |
先頭を指すconstイテレータを取得する |
map::cend |
末尾の次を指すconstイテレータを取得する |
map::rend |
先頭の前を指す逆イテレータを取得する |
map::crbegin |
末尾を指す逆constイテレータを取得する |
map::crend |
先頭の前を指す逆constイテレータを取得する |