此函数在向量容器的位置pos和大小增加之前插入一个新元素。
Iterator it=v.emplace(pos,args);
pos - 它定义了要插入新元素的位置。
args - 已提出参数以构造新元素。
它将迭代器返回到新插入的元素。
让我们看一个简单的例子。
#include <iostream> #include<vector> using namespace std; int main() { vector<int> v{1,2,3,4,5}; cout<<"Elements of vector v are :"; for(int i=0;i<v.size();i++) cout<<v[i]<<" "; cout<<'\n'; cout<<"After adding two elements, elements are :"; vector<int>::iterator it=v.emplace(v.begin()+2,8); v.emplace(it,9); for(int i=0;i<v.size();i++) cout<<v[i]<<" "; return 0; }
输出:
Elements of vector v are :1 2 3 4 5 After adding two elements, elements are :1 2 9 8 3 4 5
在此示例中,使用emplace()函数增加了矢量容器的大小。
让我们看一个简单的另一个例子。
#include <iostream> #include<vector> using namespace std; int main() { vector<string> v{"mango","apple","banana"}; v.emplace(v.begin()+2,"strawberry"); for(int i=0;i<v.size();i++) std::cout<< v[i] << " "; return 0; }
输出:
Mango apple strawberry banana
在此示例中,向量容器的大小通过使用emplace()函数向向量中添加新字符串来增加。
链接:https://www.learnfk.comhttps://www.learnfk.com/c++/cpp-vector-emplace-function.html
来源:LearnFk无涯教程网
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)