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

履歴 編集

function
<deque>

std::deque::cend(C++11)

const_iterator cend() const noexcept;

概要

末尾要素の次を指す読み取り専用イテレータを取得する。

end()は非constdequeオブジェクトに対してiteratorを返し、constdequeオブジェクトに対してはconst_iteratorを返すが、cend()const_iteratorを返すバージョンのみが提供されている。

アルゴリズムにイテレータの組を渡す際、アルゴリズム内でデータの書き換えが起こらないというユーザーの意図を示す場合などに有用である。

戻り値

末尾要素の次を指す読み取り専用イテレータ

例外

投げない

計算量

定数時間

備考

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

#include <iostream>
#include <deque>
#include <algorithm>

int main()
{
  std::deque<int> c = {1, 2, 3};

  // このアルゴリズム内ではcの書き換えを決して行わない
  std::for_each(c.cbegin(), c.cend(), [](const int& x) {
    std::cout << x << std::endl;
  });
}

出力

1
2
3

バージョン

言語

  • C++11

処理系

参照