С++ 11 векторы имеют новую функцию emplace_back
. В отличие от push_back
, который полагается на оптимизацию компилятора, чтобы избежать копирования, emplace_back
использует совершенную пересылку для отправки аргументов непосредственно конструктору для создания объекта на месте. Мне кажется, что emplace_back
делает все push_back
, но некоторое время он будет делать это лучше (но не хуже).
Какую причину я должен использовать push_back
?