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
処理系
- Clang: 23 ✅
- GCC: 16 ✅
- Visual C++: 2026 Update 2 ❌