学习BoolanC++笔记_07(STL与泛型编程第七周)
作者: ayaoko
出处: http://www.cnblogs.com/fyc006/>
关于作者:小可才疏学浅还请多多赐教!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(270469391@qq.com)咨询.
侯捷:源码之前,了无秘密!
1,你应该具备的基础
C++基本语法,
模板Templates基础,令你事半功倍,
数据结构(data structures)和算法(algorithms)概念,令你如鱼得水。
2,OOP与GP
oop企图将datas和methods关联在一起。
gp卻将datas和methods分开来。
gp:
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304201615345-1803991230.jpg)
3,operator overlading 操作符重载,Templates 模板
前面的课程有提到,不重复写。
4,分配器allocators (不建议使用)
一般标准是, ::operator new(malloc) 和 ::operator delete(free) 来完成 allocate() 和 deallocate().没有任何特殊设计。(GUN2.9 alloc)。
5,容器,结构与分类。
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304202727563-1570770030.jpg)
(下面内容看图说话,本人也朦懂!!!)
6,容器list
6.1 list主要是双向循环链表。
GNU C++2.9 VS 4.9
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304203426407-536367797.jpg)
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304203446954-1898950418.jpg)
6.2 iterator必须提供 , 容器<>::iterator。
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304203745938-2114163962.jpg)
6.3 i++++是不允许的,iterator 特化。
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304204333266-312881127.jpg)
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304204358438-300278993.jpg)
6.4 其它容器差不多(容器结构,iterator.....),深入各不同。
vector:连续空间,成长两倍。
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304204752688-845573135.jpg)
array:固定长度就是数组,但可以使用到iterator。
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304205111954-1528406577.jpg)
forward_list:单身链表
![](https://images2015.cnblogs.com/blog/341737/201703/341737-20170304205249891-1205492975.jpg)
作者:ayaoko
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。