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

履歴 編集

function
<inplace_vector>

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

static constexpr void reserve(size_type n); // (1) C++26

概要

容量を確認する。inplace_vectorの容量は固定であるため、この関数は容量の変更を行わない。nN以下であれば何もせず、nNを超える場合は例外を送出する。

この関数は、std::vector::reserve()との互換性のために提供されている。

例外

n > Nの場合、std::bad_alloc例外を送出する。

戻り値

なし

計算量

定数時間

#include <print>
#include <inplace_vector>
#include <stdexcept>

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

  // 容量内なので何も起きない
  iv.reserve(3);
  std::println("reserve(3): OK");

  // 容量超過で例外
  try {
    iv.reserve(10);
  }
  catch (const std::bad_alloc&) {
    std::println("reserve(10): bad_alloc");
  }
}

出力

reserve(3): OK
reserve(10): bad_alloc

バージョン

言語

  • C++26

処理系

参照