• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

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

    履歴 編集

    function
    <map>

    std::multimap::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
    

    概要

    multimap コンテナ内の末尾を指す逆イテレータを取得する。 内部的に、multimap コンテナは各要素をキーの値に従って下位から上位へと並べており、従って rbegin() は最上位のキーにあたる値をへのイテレータ返す。 rbegin()end() と同じ要素を指すわけではなく、その前の要素を指すことに注意。

    戻り値

    反転したシーケンスの先頭を指す逆イテレータ。 reverse_iteratorconst_reverse_iterator はともにメンバ型である。multimap クラステンプレートにおいて、これらは逆双方向イテレータであり、それぞれ reverse_iterator<iterator>, reverse_iterator<const_iterator> と定義される。

    計算量

    定数時間。

    #include <iostream>
    #include <map>
    
    int main()
    {
      std::multimap<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::multimap<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
    1 a
    

    処理系

    関連項目

    名前 説明
    multimap::begin 先頭を指すイテレータを取得する
    multimap::end 末尾の次を指すイテレータを取得する
    multimap::cbegin 先頭を指すconstイテレータを取得する
    multimap::cend 末尾を指すconstイテレータを取得する
    multimap::rend 先頭の前を指す逆イテレータを取得する
    multimap::crbegin 末尾を指す逆constイテレータを取得する
    multimap::crend 先頭の前を指す逆constイテレータを取得する