STL标准库(三)之forward_list

如下一个程序进行演示讲解

#include <forward_list> 需要包含该头文件
template <typename T>

void print(T Begin, T end)

{

for (T i = Begin; i != end; ++i)

{

std::cout << *i << std::endl;

}

std::cout << std::endl;

}

int main()

{

std::forward_list<int> obj(5); 声明一个当前有五个元素的单向链表

int temp = 0;

for (auto i = obj.begin(); i != obj.end(); i++)

{

obj.push_front(temp); 相当于头插法

temp++;

}

for (auto i = obj.begin(); i != obj.end(); i++)

{

std::cout << *i << std::endl; 遍历打印

}

struct std::forward_iterator_tag 该迭代器是一个单向迭代器,只能从头部开始使用,支持++ * = 运算符

auto it = obj.begin(); 接受头部迭代器

*it = 123;赋值123

it++; 指向下一个迭代器

*it = 124; 赋值124

obj.pop_front(); 头部元素弹出

obj.clear(); 清空该链表所有元素

print(obj.begin(), obj.end());

system("pause");

return 0;

}

相关推荐
取加若则_几秒前
Linux权限
linux·c++
百锦再2 分钟前
Kubernetes与开发语言:重新定义.NET Core与Java的云原生未来
开发语言·云原生·kubernetes
R&L_201810012 分钟前
三维旋转变换
c++·坐标变化
草莓熊Lotso3 分钟前
C++11 核心进阶:引用折叠、完美转发与可变参数模板实战
开发语言·c++·人工智能·经验分享·后端·visualstudio·gitee
你不是我我6 分钟前
【Java 开发日记】我们来说一下消息的可靠性投递
java·开发语言
电商API_180079052477 分钟前
主流电商平台 API 横向测评:淘宝、京东、拼多多接口能力与对接成本分析
大数据·开发语言·网络·数据库·人工智能
乌萨奇也要立志学C++7 分钟前
【洛谷】贪心专题之哈夫曼编码 从原理到模板题解析
c++·算法
落羽的落羽8 分钟前
【C++】并查集的原理与使用
linux·服务器·c++·人工智能·深度学习·随机森林·机器学习
free-elcmacom8 分钟前
Python实战项目<3>赛制分数分析
开发语言·前端·python·数据分析
赵谨言9 分钟前
基于OpenCV的数字识别系统
大数据·开发语言·经验分享·python