On Monday 20 July 2015 18:25:43 Keith Gardner wrote:
> > What's the difference in std::vector between an rvalue push_back and
> > emplace_back?
> 
> emplace_back takes variadic template arguments to construct the item
> directly in the vector instead of creating a temporary and then performing
> a move operation. If the template argument is just an rvalue of the
> container type, it will perform just like the rvalue push_back function.
> 
> http://en.cppreference.com/w/cpp/container/vector/emplace_back

Aside from the variadic and the templateness, what's the difference?

The templateness changes how a type different than the vector's type gets 
constructed (it might undergo a conversion first). But assuming I am pushing 
back a T, is there any reason I'd want emplace_back? Or vice-versa?
-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center

_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to