最終更新日時(UTC): 2026年02月17日 14時22分33秒
Akira Takahashi が更新

履歴 編集

function
<set>

# std::set::end

    iterator end();                    // (1) C++03
    iterator end() noexcept;           // (1) C++11
    constexpr iterator end() noexcept; // (1) C++26

    const_iterator end() const;                    // (2) C++03
    const_iterator end() const noexcept;           // (2) C++11
    constexpr const_iterator end() const noexcept; // (2) C++26

## 概要

`set` コンテナの末尾の次を参照するイテレータを取得する。

## 戻り値

コンテナの末尾の次を参照するイテレータ。

`iterator` と `const_iterator` はいずれもメンバ型である。`set` クラステンプレートにおいて、これらは双方向イテレータである。

## 備考

`const` 版ではない `end` が返す `iterator` も読み取り専用イテレータである。

（が、`iterator` と `const_iterator` が同じ型とは限らない）

## 計算量

定数時間

## 備考

- この関数によって返されるイテレータは、`*this`が保持するいずれの要素も参照しない。その指す先は、不正な範囲となるだろう

## 例

    #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>::iterator i = c.begin();
      while (i != c.end())
        std::cout << *i++ << " ";
      std::cout << std::endl;
    }

### 出力

    0 1 2 4 5 9

## 関連項目

名前 | 説明
--- | ---
`begin` | 先頭を指すイテレータを取得する
`rbegin` | 末尾を指す逆イテレータを取得する
`rend` | 先頭の前を指す逆イテレータを取得する

## 参照

- P3372R3 constexpr containers and adaptors