迭代器 和 指针
正在看《 c++ primer 第四版》
看到迭代器,有点迷糊。
感觉迭代器就是一个指针一样的。这个迭代器和指针到底有什么关系?
还有一句“任何改变 vector 长度的操作都会使已存在的迭代器失效”,神马意思?原来的迭代器指向的位置变化了?
vector感觉和数组很类似?和数组有神马区别
[解决办法]
迭代器可以理解成泛化的指针,至于什么是泛化,先尝试使用stl这类使用模板技术的库再回头来研究也不迟
至于vector和普通数组
普通数组在声明或者new之后,其地址和大小是固定的。
所以如果在使用过程中需求大于数组现有容量,就要重新申请一个新的数组,并将原数据复制到新的数组中。
vector就是一个在内部实现了这些操作的“动态数组”,使用的时候就不需要考虑容量问题了。
[解决办法]