最終更新日時:
が更新

履歴 編集

function
<deque>

std::deque::at

reference at(size_type n);
const_reference at(size_type n) const;

概要

任意位置の要素への参照を取得する。

この関数は、dequeコンテナオブジェクト中の位置nにある要素への参照を返す。

operator[]メンバ関数は範囲外アクセスの動作が未規定だが、この関数は範囲外アクセスの場合に out_of_range 例外を送出する。

戻り値

コンテナ内の指定された位置の要素を返す。

メンバ型 referenceconst_reference は、コンテナ内の要素への参照型である。

例外

n >= size() である場合、out_of_range 例外を投げる。

計算量

定数時間

#include <iostream>
#include <deque>
#include <stdexcept>

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

  // 1番目の要素を取得する
  int& x = c.at(1);
  std::cout << x << std::endl;

  // 範囲外アクセス
  try {
    c.at(100);
  }
  catch (std::out_of_range&) {
    std::cout << "out of range!" << std::endl;
  }
}

出力

2
out of range!

関連項目

名前 説明
operator[] 任意位置の要素への参照を取得する