摘要:
前面在介绍push_back函数的时候有说到placement new的用法.前面说的很简单.这几天处理一些其他的事情,直到昨天下午才有时间看源码,顺便安静的看一下书. 其中我又看到了挂关于placement new的介绍,那么就在文章开始之前先说一下这个问题. placement new又称"定为new"(我想这纯粹是翻译过来的意思.),当在禁止使用Heap分配的时候,也就是声明对象的构造函数为private的时候,我们不能调用构造函数去构造一个对象,这个时候就可以使用placement new. 前一段时间我在阅读sig stl源码的时候也看到了stl容器对于place 阅读全文
阅读排行榜
C++ Standard Stl -- SGI STL源码学习笔记(02) Concepts Check
2012-07-25 17:28 by respawn, 1823 阅读, 收藏,
摘要:
希望很多同学不是因为看到标题,出于好奇心才进来的. 以前我驻扎在CSDN一段时间,但是后来搬到了博客园. 博客园同CSDN比起来,感觉好很多,自己也不知道是什么原因. 可能是CSDN现在很多所谓的技术专家都开始转行写小说了,俺不喜欢看小说,喜欢搞技术,所以就到了博客园. 标题上写着是介绍STL中的Concepts Check,可以说是一种机制. 今天我也是在阅读SGI STL源码的过程中遇到这个问题,问了很多人,也查阅了很多资料.但是很多人表示对此毫不知情~ 下午又去图书馆找资料,最后也只是找到一本>,粗略的浏览了一下相关章节,有点吃力,原因是它的线索是前后贯穿的,引用前面章节的例子来说 阅读全文
C++ Standard Stl -- SGI STL源码学习笔记(04) stl_deque && 初涉STL内存管理
2012-07-28 15:07 by respawn, 1772 阅读, 收藏,
摘要:
在SGI STL源码中,很多时候一些模板类提供默认形参的时候,都会选择提供deque.template ) > // stl_stack.h template ) > // stl_queue.h _STL_DEPENDENT_DEFAULT_TMPL宏就是替换后扩展为"=deque".既然出场的频率那么高,所以我首先选择他.一起去看看deque的源码.deque的源码很多,一千六百多行的代码. 而且实现也是蛮复杂的.包括deque_iterator,deque_allocator,deque_base,deque.如果你也在阅读deque的源码,我的建议是先从 阅读全文
大三小生浅谈如何学C
2012-06-30 00:37 by respawn, 1754 阅读, 收藏,
摘要:
这篇算是自己的随想录吧,反正考试周,寂寞的要死~ 我想说的是:考试周,去你的~1. 首先学习标准C. 学习C,当然先从标准C学起了,如果你对标准C模糊的话,那么请去google吧,实在不行就度娘.直到搞明白为止,要不然 说其他的等于没说. 标准C学习推荐一本比较好的书 - >. 个人感觉这本书还不错. 看完这本书就可以尝试去了 解一下C标准库了,同样有本书推荐 - >.2. 你喜欢的是windows还是*nix? 不要告诉我说,你一直都是使用windows,不知道什么是*nix.我想,要是一个IT的孩纸不知道*nix,悲剧的程度无法想象.要是你 说你只会*nix,不会windows 阅读全文
C++ Standard Stl -- SGI STL源码学习笔记(05) stl_vector 与 一些问题的细化 1
2012-07-29 08:47 by respawn, 1722 阅读, 收藏,
摘要:
上篇文章中很粗略的角度讲解了一下stl_deque的设计思想,以及涉及到得浅显的STL内存管理方面,至少我们看得到的冰山一角. 这篇文章中关于vector的分析,我将将一些问题细化一下,对一些函数做细致的分析.有些时候,有些问题还是说清楚比较好. 打开stl_vector的源码,发现vector的设计思路和stl_deque如出一辙,想想这样是很合理的,保持实现的一致性.只是stl_vector没有提供一个确定的模板类Iterator去实现迭代器,而是在vector模板类中实现了迭代. 但是和deque基本没有什么大的不同.下面来看看源码: 1. 这次就不讲解设计部分了,主要讲解... 阅读全文
浙公网安备 33010602011771号