强的网站建设公,科技特长生,青岛网站制作公司网络,餐饮网站开发简介#xff1a; CSDN博客专家#xff0c;专注Android/Linux系统#xff0c;分享多mic语音方案、音视频、编解码等技术#xff0c;与大家一起成长#xff01; 优质专栏#xff1a;Audio工程师进阶系列【原创干货持续更新中……】#x1f680; 人生格言#xff1a; 人生… 简介 CSDN博客专家专注Android/Linux系统分享多mic语音方案、音视频、编解码等技术与大家一起成长 优质专栏Audio工程师进阶系列【原创干货持续更新中……】 人生格言 人生从来没有捷径只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注Android系统攻城狮 1.前言 本篇目的C之std::list::iterator迭代器应用实例。 List迭代器介绍 在C中list是一个双向链表容器可以用来存储和操作一系列的元素。迭代器是一种用于遍历容器的对象它提供了对容器中元素的访问和操作。 对于list容器有两种类型的迭代器可用iterator和const_iterator。它们的功能相似但 iterator 可以用于修改容器中的元素而 const_iterator 则只能用于读取元素不能修改。
使用迭代器可以按照顺序访问链表中的元素并进行增加、删除和修改操作。以下是一些常用的迭代器操作
begin()返回指向链表第一个元素的迭代器。end()返回指向链表末尾最后一个元素之后的迭代器。rbegin()返回指向链表末尾的逆向迭代器指向最后一个元素。rend()返回指向链表开头的逆向迭代器指向第一个元素之前的位置。将迭代器向后移动一个位置。--将迭代器向前移动一个位置。*返回当前迭代器指向的元素的引用。
2.应用实例
v1.0
#include iostream
#include list
#include stringtypedef std::liststd::string::iterator StringListIterator;int main() {std::liststd::string names{Alice, Bob, Charlie};StringListIterator iter names.begin();while (iter ! names.end()) {std::cout *iter std::endl;iter;}return 0;
}
v2.0
#include iostream
#include listint main() {// 创建一个list并初始化一些值std::listint myList;myList.push_back(10);myList.push_back(20);myList.push_back(30);myList.push_back(40);myList.push_back(50);// 使用iterator迭代器遍历liststd::listint::iterator iter;for (iter myList.begin(); iter ! myList.end(); iter) {std::cout *iter ;}return 0;
}