iterator end(); // (1) C++03
iterator end() noexcept; // (1) C++11
const_iterator end() const; // (2) C++03
const_iterator end() const noexcept; // (2) C++11
概要
末尾要素の次を指すイテレータを取得する。
戻り値
非const
な文脈ではiterator
型で最後尾要素の次を指すイテレータを返し、
const
な文脈ではconst_iterator
型で 最後尾要素の次を指すイテレータを返す。
例外
投げない
計算量
定数時間
備考
- この関数によって返されるイテレータは、
*this
が保持するいずれの要素も参照しない。その指す先は、不正な範囲となるだろう
例
#include <iostream>
#include <deque>
int main()
{
std::deque<int> d = {1, 2, 3};
const std::deque<int>& cd = d;
decltype(d)::iterator i = d.begin();
decltype(d)::iterator last = d.end();
decltype(d)::const_iterator ci = cd.begin();
decltype(d)::const_iterator clast = cd.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
関連項目
名前 | 説明 |
---|---|
begin |
先頭要素を指すイテレータの取得する |
cbegin |
先頭要素を指す読み取り専用イテレータを取得する |
cend |
末尾要素の次を指す読み取り専用イテレータを取得する |
rbegin |
末尾要素を指す逆イテレータを取得する |
rend |
先頭要素の前を指す逆イテレータを取得する |