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

履歴 編集

function
<inplace_vector>

std::inplace_vector::unchecked_push_back(C++26)

constexpr reference unchecked_push_back(const T& x); // (1) C++26
constexpr reference unchecked_push_back(T&& x);      // (2) C++26

概要

容量チェックなしで末尾へ要素を追加する。

  • (1) : xをコピーして末尾に追加する。
  • (2) : xをムーブして末尾に追加する。

事前条件

size() < Nであること。この条件を満たさない場合、動作は未定義

効果

xを末尾に追加する。

戻り値

追加された要素への参照

計算量

定数時間

備考

この関数は容量チェックを行わないため、push_back()よりも高速に動作しうる。呼び出し前に容量に空きがあることが確実な場合に使用する。

#include <print>
#include <inplace_vector>

int main()
{
  std::inplace_vector<int, 5> iv;

  // 容量に空きがあることが確実な場合に使用
  for (int i = 0; i < 5; ++i) {
    iv.unchecked_push_back(i);
  }

  for (int x : iv) {
    std::println("{}", x);
  }
}

出力

0
1
2
3
4

バージョン

言語

  • C++26

処理系

参照