std::vector::emplace_back有时会调用copy ctor!大意就是,如果发生扩容,且没有定义move ctor,那么会调用copy ctor。如果提供了move ctor,优先调用move ctor。
from cppreference:
Notes
Since reallocation may take place,
emplace_back
requires the element type to be MoveInsertable forvector
.
std::vector::emplace_back有时会调用copy ctor!大意就是,如果发生扩容,且没有定义move ctor,那么会调用copy ctor。如果提供了move ctor,优先调用move ctor。
from cppreference:
Notes
Since reallocation may take place,
emplace_back
requires the element type to be MoveInsertable forvector
.