• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

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

    履歴 編集

    function
    <unordered_map>

    std::unordered_multimap::begin

    iterator begin() noexcept;
    const_iterator begin() const noexcept;
    

    概要

    先頭の要素を指すイテレータを取得する。

    unordered_multimap は非順序連想コンテナであるため「先頭」に特に意味はないが、begin() で得られたイテレータを end() まで operator++() でイテレートすることで当該コンテナの要素を漏れなく走査できる。

    戻り値

    先頭の要素を指すイテレータ

    例外

    投げない。

    計算量

    定数

    #include <iostream>
    #include <string>
    #include <algorithm>
    #include <utility>
    #include <unordered_map>
    
    int main()
    {
      using mymap = std::unordered_multimap<std::string, int>;
    
      mymap um{ { "1st", 1 }, { "2nd", 2 }, { "3rd", 3 }, };
      const mymap cum{um};
    
      std::for_each(um.begin(), um.end(), [](mymap::value_type p)
        { std::cout << '{' << p.first << ',' << p.second << "}, "; });
      std::cout << std::endl;
    
      std::for_each(cum.begin(), cum.end(), [](mymap::value_type p)
        { std::cout << '{' << p.first << ',' << p.second << "}, "; });
      std::cout << std::endl;
    }
    

    出力例

    {3rd,3}, {1st,1}, {2nd,2}, 
    {3rd,3}, {1st,1}, {2nd,2}, 
    

    注:unordered_multimap は非順序連想コンテナであるため、出力順序は無意味であることに注意

    バージョン

    言語

    • C++11

    処理系

    関連項目

    名前 説明
    end 最終要素の次を指すイテレータの取得
    cbegin 先頭要素を指す読み取り専用イテレータの取得
    cend 最終要素の次を指す読み取り専用イテレータの取得
    begin(size_type) インデックス(添え字)で指定したバケット内の先頭要素を指すイテレータを取得
    end(size_type) インデックス(添え字)で指定したバケット内の最終要素の次を指すイテレータを取得
    cbegin(size_type) インデックス(添え字)で指定したバケット内の先頭要素を指す読み取り専用イテレータを取得
    cend(size_type) インデックス(添え字)で指定したバケット内の最終要素の次を指す読み取り専用イテレータを取得