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

履歴 編集

function
<vector>

std::vector::end

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

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

概要

末尾の次を指すイテレータを取得する。

戻り値

constな文脈ではiterator型で最後尾要素の次を指すイテレータを返し、

constな文脈ではconst_iterator型で 最後尾要素の次を指すイテレータを返す。

例外

投げない

計算量

定数時間

備考

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

#include <iostream>
#include <vector>

int main()
{
  std::vector<int> v = {1, 2, 3};
  const std::vector<int>& cv = v;

  decltype(v)::iterator i = v.begin();
  decltype(v)::iterator last = v.end();

  decltype(v)::const_iterator ci = cv.begin();
  decltype(v)::const_iterator clast = cv.end();

  for (; i != last; ++i) {
    std::cout << *i << std::endl;
  }

  for (; ci != clast; ++ci) {
    std::cout << *ci << std::endl;
  }
}

出力

1
2
3
1
2
3

参照