Безопасно ли вставлять диапазон в std::vector, если его источник находится в хвосте того же вектора? [дубликат]C++

Программы на C++. Форум разработчиков
Anonymous
Безопасно ли вставлять диапазон в std::vector, если его источник находится в хвосте того же вектора? [дубликат]

Сообщение Anonymous »

Безопасно ли вставлять диапазон в std::vector, если его источником является хвост того же вектора?
Мне нужно вставить несколько элементов в std: :vector как копии элементов того же вектора, которые расположены позже вставленного места.
Итак, я написал следующую демонстрацию кода:

Код: Выделить всё

#include 
#include 
#include 

int main()
{
{
std::vector v = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };

v.reserve(2*v.size());

// Works just fine on both CLang and MSVC
v.insert(
v.begin() + 3,
v.begin() + 5,
v.end()
);

std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79217657/is-it-safe-to-insert-a-range-in-stdvector-if-its-source-is-at-the-tail-of-the[/url]

Вернуться в «C++»