vector::emplace_back
将一个就地构造的元素添加到向量末尾。
template <class... Types> void emplace_back( Types&&... _Args);
参数
参数 |
描述 |
---|---|
_Args |
构造函数参数。 函数根据所提供的参数来推断要调用的构造函数重载。 |
备注
如果可能,请使用 emplace 以避免在初始化对象 obj,再调用 push_back(obj) 时出现复制操作。
示例
#include <vector>
struct obj
{
obj(int, double) {}
};
int main()
{
std::vector<obj> v;
v.emplace_back(1, 3.14); // obj in created in place in the vector
}
要求
标头:<vector>
命名空间: std