此函数用于在向量(vector)的末尾插入新元素,并增加向量(vector)容器的大小。
向量(vector)“ v”。语法为:
v.emplace_back(args);
args:传递了用于构造新元素的参数。
它不返回任何值。
让我们看一个简单的实例。
#include <iostream> #include<vector> using namespace std; int main() { vector<char> v{'C','+'}; v.emplace_back('+'); for(int i=0;i<v.size();i++){ cout<<v[i]; } return 0; }
输出:
C++
在此示例中,通过使用emplace_back()函数在向量(vector)的末尾添加新的字符值来增加向量(vector)'v'的大小。
insert()函数用于将对象复制到向量(vector)中,而emplace()函数仅用于在向量(vector)内部构造对象,从而避免了不必要的操作。
简单的理解,就是 emplace() 在插入元素时,是在容器的指定位置直接构造元素,而不是先单独生成,再将其复制(或移动)到容器中。因此,在实际使用中,推荐大家优先使用 emplace()。
让我们看另一个简单的实例。
#include <iostream> #include<vector> using namespace std; int main() { vector<int> v{1,2,3,4,5}; v.emplace_back(6); for(int i=0;i<v.size();i++){ cout<<v[i]<<" "; } return 0; }
输出:
1 2 3 4 5 6
在此示例中,emplace_back()函数用于在向量(vector)的末尾(即最后一个元素之后)添加新的整数值。