emplace_back似乎可以不用move就能实现
stl容器的emplace_back比push_back而言,用move语义来移动一个元素,而不是拷贝一个元素,所以效率可以更高。我看gcc的源码,push_back(T&&)也是内部用emplace_back一个move过的元素
问题:
但是这样做是为了效率考虑的话,我感觉placement_new的效率更高啊,容器先reserve(),然后以reserve出来的空间作为地址,做new()来构造一个新的元素,这样一来连move都省掉了,岂不是更好。
感觉emplace_back需要依赖move语义,有点多次一举的意思啊