1. emplace_back() 和 push_back() 的底层实现机制上的区别
push_back() 向容器尾部添加元素时,首先会创建这个元素,然后再将这个元素拷贝或者移动到容器中(如果是拷贝的话,事后会自行销毁先前创建的这个元素)
emplace_back() 在实现时,则是直接在容器尾部创建这个元素,省去了拷贝或移动元素的过程
2. emplace_back() 和 push_back() 在功能上没有区别
在使用上你完全可以放心地把 push_back() 替换成emplace_back()(不可逆)
emplace_back() 的执行效率要比 push_back() 高。因此,在实际工作中,应优先使用 emplace_back() 函数。