C++ STL 学习
来源:互联网 发布:fastboot刷gapps软件 编辑:程序博客网 时间:2024/04/24 18:59
STL的关键实际上是iterator。STL算法作为参数使用iterator,他们指出一个范围,有时是一个范围,有时是两个。STL容器支持iterator,这就是为什么我们说 list<int>::iterator,或 list<char>::iterator, 或 list<string>::iterator.
iterator有很好的定义继承性。它们非常有用。某些iterator仅支持对一个容器只读,某些仅支持写,还有一些仅能向前指,有一些是双向的。有一些iterator支持对一个容器的随机存取。
STL算法需要某个iterator作为“动力” 如果一个容器不提供iterator作为“动力”,那么这个算法将无法编译。例如,list容器仅提供双向的iterator。通常的sort()算法需要随机存取的iterator。这就是为什么我们需要一个特别的list成员函数sort()。
要合适的实际使用STL,你需要仔细学习各种不同的iterator。你需要知道每种容器都支持哪类iterator。你还需要知道算法需要那种iterator,你当然也需要懂得你可以有哪种iterator。
- C++STL priority_queue 学习
- C++STL学习笔记
- C++STL学习
- C++STL学习
- C++STL学习Pair
- C++stl map学习
- C++STL学习笔记
- C++STL学习经典
- C++STL学习小结
- 【C/C++】STL学习笔记
- C++STL之map学习
- C++stl学习文档 vector
- C++stl学习文档 list
- C++—STL学习笔记
- C++STL之map学习
- C++STL&GP学习后记——初识STL
- 【C++】【STL】STL学习之旅一:命名空间
- 【C++】【STL】STL学习之旅二:模板
- Eclipse常用快捷键
- delphi中move函数的用法
- Mysql 内存表HASH索引 + 序列化缓存文件 做网站数据缓存
- WinCE6.0 DEVICEEMULATOR BSP在GEC2410开发板上的移植(1)-eboot及串口驱动移植
- memcached测试代码(包含memcached_cas的用法)
- C++ STL 学习
- Red Hat Enterprise Linux 3 Red Hat Enterprise Linux 3 Red Hat Enterprise Linux 3 Red Hat Enterprise Linux 3 Red Hat Ente
- 穿越防火墙技术要求简介
- 网络电话穿越防火墙和NAT的四种方法
- myeclipse快捷键
- (转)Apache和Tomcat的区别
- 定位and初始显示级别
- oracle存储过程小结
- 红黑树的添加删除操作