最終更新日時(UTC):
が更新

履歴 編集

function
<set>

std::set::rbegin

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

概要

set コンテナ内の末尾の要素を指す逆イテレータを取得する。

内部的に、set コンテナは各要素を下位から上位へと並べており、従って rbegin() は最上位のキーにあたる値を指すイテレータを返す。

rbegin()end() と同じ要素を指すわけではなく、その前の要素を指すことに注意。

戻り値

反転したシーケンスの先頭を指す逆イテレータ。

reverse_iteratorconst_reverse_iterator はともにメンバ型である。set クラステンプレートにおいて、これらは双方向イテレータであり、それぞれ reverse_iterator<iterator>, reverse_iterator<const_iterator> と定義される。

計算量

定数時間。

#include <iostream>
#include <set>

int main()
{
  std::set<int> c;
  c.insert(5);
  c.insert(2);
  c.insert(4);
  c.insert(1);
  c.insert(0);
  c.insert(0);
  c.insert(9);

  std::set<int>::reverse_iterator i = c.rbegin();
  while (i != c.rend())
    std::cout << *i++ << " ";
  std::cout << std::endl;
}

出力

9 5 4 2 1 0 

関連項目

名前 説明
rend 先頭の前を指す逆イテレータを取得する
begin 先頭を指すイテレータを取得する
end 末尾の次を指すイテレータを取得する