目前我的工作环境还是win,所有演示也用VS或者cygwin这些环境作为基础。
1、配置项目的附加include目,增加预定义位置集设置,编译器会把它加入include路径,比如在某个文件夹中定义一个vector(不带后缀),当我们项目中使用#include
猜想1:如果预定义位置集中所增加的不同路径中有两个相同的文件,include采用的是有歧义形式的方式,即不附带完整路径,使用的是哪个文件...
分类:
其他好文 时间:
2014-11-16 01:52:46
阅读次数:
211
一、前言 最近,刚看完《STL源码剖析》,深深被实现STL库的那些的大牛们所折服。同时又感觉自己与大牛们差距之大,便萌生深入学习之意。如果仅仅只是看看《STL源码剖析》的话,又恐对STL的理解又不是非常深刻。故,打算自己动手也去实现下STL的关键组件,又思及自己水平有限,所以,就按照其源码自己重新....
分类:
其他好文 时间:
2014-11-14 15:29:23
阅读次数:
201
这个星期看了侯捷先生《STL 源码剖析》算法部分,基本看完了,其中算法比较多,我就重点下Sort在SGI STL中的实现。
1. sort
函数的实现是这样的:
template
inline void sort(RandomIAccessIterator first , RandomAccessIterator last>
{
if ( first != last) {...
分类:
其他好文 时间:
2014-11-08 18:18:19
阅读次数:
239
学习c++中,看完书后,最近苦于不知道下一步该怎么办了,就翻翻STL源码剖析中的各种容器,想重新实现一遍。很多问题之前看的时候还不知道是怎么回事,当自己写的时候才发现许多应该注意与理解的。这个vector类写得特别简单,只实现了其中的一部分功能,因为没有使用iterator,发现一些函数不太好写,而且封装性极差,同时,只能存放内置类型。在这些问题中,希望自己以后会好好重写一下。
这个程序有点小情...
分类:
其他好文 时间:
2014-11-01 17:51:23
阅读次数:
157
操作系统:centos 6.4STL源码版本:3.3前言: 要看一个项目的源码,首先要选中切入点。 那么在sgi stl 标准库中,其切入点是什么呢? 答案是:stl_config.h 文件。不同的编译器对C++语言的支持程度不尽相同。为了具备广泛移植能力,SGI STL 定义了一个环境组态文...
分类:
其他好文 时间:
2014-10-29 16:56:18
阅读次数:
297
语言(C++)
书籍:c++primer、effective c++、stl源码剖析、深度探索c++对象模型,程序员的自我修养。
操作系统
书籍:linux内核的设计与实现、UNIX高级环境编程
网络
书籍:TCP/IP卷1、UNIX网络编程、linux高性能服务器编程---游双
算法
书籍:剑指offer,编程之美...
分类:
其他好文 时间:
2014-10-25 10:39:02
阅读次数:
153
最近在读SGI STL源码,感觉对C++的学习很有帮助,之前对于泛型、iterator、traits等等各种特性的概念非常模糊,通过这两天的琢磨,再加上《STL 源码剖析》的帮助,对C++那诡异的语法也不再害怕了。在其中遇到的一些问题,总结如下:1. C++空白基类最优化(EBO)参考:http:/...
分类:
编程语言 时间:
2014-10-22 21:55:00
阅读次数:
258
STL源码之实现一个简易的Vector容器
这里需要的基础知识主要是类模板和函数模板,以及一个C++内存分配的技术allocator类,它提供可感知类型的内存分配,这个类支持一个抽象接口,以分配内存并随后使用该内存保存对象。
使用allocator类,首先应用allocator类建立一个allocator对象,然后使用该对象你可以分配内存,释放内存,构造你...
分类:
其他好文 时间:
2014-10-22 18:16:27
阅读次数:
171
> 侯捷著
很早就买了这本书, 一直没看, 现在在实验室师兄代码的时候发现里面使用了大量泛型编程的内容, 让我有了先看看这本书的想法.
看之前我对于泛型编程了解甚少, STL倒使用的比较熟练. 看完这本书之后, 只能表示以前对于STL的使用真是跟小孩玩似得, 只懂其冰山一角. 在真正的深入到源码之后, 对于STL中不容易理解的部分如 迭代器(iterator), 仿函数(functo...
分类:
其他好文 时间:
2014-10-21 17:55:46
阅读次数:
225
1. // Filename: stl_config.h 2. 3. // Comment By: 凝霜 4. // E-mail: mdl2009@vip.qq.com 5. // Blog: http://blog.csdn...
分类:
编程语言 时间:
2014-10-21 00:45:47
阅读次数:
294