STL 中的 forward_list 容器添加元素有两种方法,我们可以使用 push_front() 和 emplace_front() 方法。
成员函数 | 功能 |
---|---|
push_front() | 在容器头部插入一个元素。 |
emplace_front() | 在容器头部生成一个元素。该函数和 push_front() 的功能相同,但效率更高。 |
使用 push_front 给 forward_list 追加元素
#include <iostream> #include <forward_list> using namespace std; int main() { cout << "嗨客网(www.haicoder.net)\n" << endl; forward_list<string> vec; vec.push_front("HaiCoder"); vec.push_front("www.haicoder.net"); for (auto&& value : vec) { cout << "Val = " << value << endl; } return 0; }
因为,这里需要使用 C++ 11,因此,我们在 Linux 下使用 g++ 进行编译,具体命令如下:
g++ forward_list.cpp -std=c++11
编译后,我们直接运行生成的二进制文件
a.out
,如下图所示:我们看到,我们使用了 push_front 将元素添加到了 forward_list 的开始。
emplace_front添加元素
使用 emplace_front 给 forward_list 追加元素
#include <iostream> #include <forward_list> using namespace std; int main() { cout << "嗨客网(www.haicoder.net)\n" << endl; forward_list<string> vec; vec.emplace_front("HaiCoder"); vec.emplace_front("www.haicoder.net"); for (auto&& value : vec) { cout << "Val = " << value << endl; } return 0; }
编译后,我们直接运行生成的二进制文件
a.out
,如下图所示:我们看到,我们使用了 emplace_front 将元素添加到了 forward_list 的开始。
STL forward_list添加元素总结
STL 中的 forward_list 容器添加元素有两种方法,我们可以使用 push_front() 和 emplace_front() 方法。