- 博客(4)
- 资源 (3)
- 收藏
- 关注
原创 STL基础之list
相对于vector的连续线性空间,list就显得复杂,好处在于,每次插入或删除一个元素,就配置或释放一个元素空间,因此list对空间的运用绝对精准,不存在任何浪费。而且,对任何位置的元素的插入或元素移除,list永远是常数时间。 list和vector是两个最常见的容器,如果使用,必须视元素的多寡、构造复杂度、元素存取行为的特性而定。 list节点: 双向链表节点结构 template
2014-05-14 16:23:25 447
原创 STL学习之Vector
vector的数据安排及操作与array非常相似,两者唯一的差别在空间的运用方面,array是静态空间,vector是动态空间,随着元素加入,vector内部机制会自行扩展空间以容纳新元素。因此vector的运用对内存的合理利用有很大帮助。 vector的实现技术,关键在于大小的控制以及重新分配时数据移动效率,SGI vector的空间分配策略,新元素插入时,首先检查是否还有备用空间,如果有直
2014-05-14 14:25:45 400
原创 线程基础
每个进程至少有一个线程,线程由两部分组成 1、线程的内核对象,操作系统用线程内核对象管理线程,操作系统还用内核对象存放线程统计信息的地方 2、线程栈,用于维护线程执行时所需要的所有函数参数和局部变量 线程与进程的关系 进程是惰性的,进程从来不执行任何东西,它只是一个线程的容器,线程必然是在某个进程的上下文中创建,线程在其进程的地址空间内执行代码和处理数据直至消亡,同一个进程内线程共
2014-05-08 10:32:12 353
翻译 STL概述
STL中心思想:将数据容器(containers)和算法(algorithms)分开,彼此设计独立设计,最后再以一帖胶着剂将它们撮合在一起。 如何设计出两者之间的良好胶着剂是STL的难题和关键 容器,算法,迭代器(iterator,扮演粘胶角色)的合作展示,以find()为例,只要给予不同的迭代器,find()便能够对不同的容器进行查找操作。
2014-05-04 14:09:39 394
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人