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

履歴 編集

function template
<inplace_vector>

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

template <container-compatible-range<T> R>
constexpr iterator insert_range(const_iterator position, R&& rg); // (1) C++26

概要

Rangeの要素を任意の位置に挿入する。

Range rgの要素をpositionの前に挿入する。

戻り値

挿入された最初の要素を指すイテレータ。rgが空の場合はpositionを指すイテレータ。

例外

挿入後のサイズがNを超える場合、bad_alloc例外を送出する。

計算量

挿入される要素の数と挿入位置からend()までの要素数に対して線形時間。

#include <print>
#include <inplace_vector>
#include <vector>

int main()
{
  std::inplace_vector<int, 10> iv = {1, 2, 5, 6};

  std::vector<int> src = {3, 4};
  iv.insert_range(iv.begin() + 2, src);

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

出力

1
2
3
4
5
6

バージョン

言語

  • C++26

処理系

参照