这个是迭代器的特征,list通过实现迭代器从而可以实现迭代concept。具体请参考《Generic programming and the STL》一书(第一篇的第一章),STL作为一个基本完备的数据操作集,其设计理念和依据都非常抽象,想要理解有一定的难度,而且单单拿出一个组件是无法明白它单独所具有的意义的,因此要系统的学习。
但是如果你只要求会用即可的话,那么你可以把他当做语言规范或者特性记下来,迭代器在行为上就是模仿指针,但是结构上是在模仿线性表的访问方式。
STL中的迭代器把“++”这个运算符重载了,也就是重新定义了“++”的行为,而且每个容器中的行为定义是不同的,这样在不同的容器中都可以移动到下一个元素
i++是根据每个数据大小+1,这样原理。明白?
重载运算符?