Эффективно копировать векторы в C ++ 11?

0

Эффективное копирование векторов в С++ 11?

Это автоматически делается компилятором, когда вы говорите:

v1 = v2;

где v1 и v2 - std :: vector.

Или я должен использовать memcpy или еще? Я говорю о больших векторах, у нас есть 10000 элементов в одном.

  • 1
    Да, это сделано максимально эффективно. Также обратите внимание, что вы используете оператор присваивания, который не равен копированию.
  • 0
    Так что нет необходимости думать низкоуровнево об использовании таких функций, как memcpy? Здорово!
Показать ещё 3 комментария
Теги:
c++11

1 ответ

4
Лучший ответ

Да, это самый эффективный, правильный и эффективный способ скопировать векторное содержимое в существующий вектор.

Все элементы копируются полностью и правильно с использованием идиомы RAII, а распределение резервной памяти должно быть как можно быстрее, так как новый размер контейнера известен заранее.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню