关于迭代器(iterator)的一些笔记

本文是关于C++中迭代器的学习笔记,主要探讨了迭代器在STL中的作用,将其比喻为容器和泛型算法之间的胶着剂。通过对比指针,解释了迭代器如何遍历容器,并介绍了`.begin()`和`.end()`函数的使用。此外,还简单讨论了容器与数组的区别,强调了容器动态内存分配的优缺点。
摘要由CSDN通过智能技术生成

        最近钻研到《Essential C++》的第三章:泛型编程风格。着实让人。。好生研究了一番,怎么说呢,就是单拿出来概念,都能看懂,但连在一块,一脸懵。所以也是花了不少时间理解的差不多了才能来写这篇笔记,这部分暂时准备写两到三个笔记,涉及泛型编程思维,迭代器,STL等一些概念,后面会陆续进行发布。

        那么这一节我们首先来看一下迭代器。

        迭代器这个概念对于初学者来说其实并不友好,因为在比较官方的定义中大致是这样的:

众所周知,STL(Standard Template Library 标准模板库)主要是由两部分组成:容器(文章最后会进行简答的区别),比如常见的vector,list等,还有就是对容器进行操作的泛型算法,比如find(),sort()等,而迭代器就像胶着剂一样在这两者之间,但是通过这两天查看的资料来看他主要负责对容器进行遍历。

        其实对于初学者来讲,迭代器这个概念可以参考指针,首先我们先来看一段代码:

 

在这段代码中,我们定义了一个指针p指向数组arr,然后通过for循环进行数组的遍历。下面我们再来看迭代器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值