无涯教程-C++ 向量 - emplace()函数

47 阅读1分钟

此函数在向量容器的位置pos和大小增加之前插入一个新元素。

emplace - 语法

Iterator it=v.emplace(pos,args);

emplace - 范围

pos    -  它定义了要插入新元素的位置。

args  -  已提出参数以构造新元素。

emplace - 返回值

它将迭代器返回到新插入的元素。

emplace - 例子1

让我们看一个简单的例子。

#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<<
;
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()函数增加了矢量容器的大小。

emplace - 例子2

让我们看一个简单的另一个例子。

#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()函数向向量中添加新字符串来增加。

参考链接

www.learnfk.com/c++/cpp-vec…