stl源码剖析清晰
1. 自学计算机编程应该看些什么书
一:第一阶段
C语言-------《C语言设计》 作者:谭浩强
大多数人都推荐谭浩强这本书,谭浩强的C语言程序设计,我觉得更适合当教科书,主要是篇幅没有那么大,书本的内容不是很全,由老师带入门是最好的。
《C Primer Plus》第五版 作者:Stephen Prata
这本书比较厚,内容也比较基础,扩展的也比较广,自学容易上手,唯一的缺陷在于它是外国人编写,而国内的翻译往往让人难以满意,如果你有较好的英语水平,最好阅读英文版的。
《C语言入门经典》第四版 作者:Ivor Horton
二:第二阶段
这一阶段看个人主攻的方向了,安卓一般就JAVA,PC游戏、软件C++,也有推荐C#,这些都是主流语言,其他语言要看个人爱好与发展。
面向对象的语言,一般懂一门,之后要转其他语言也很容易的,其实思想都差不多,主要的不同在于语法。C#容易上手,一个月入门,一年精通,而C++却有点难,一年入门,二十年也未必敢说自己精通。如果有时间,可以了解一下汇编语言。
C++ Primer, 4rd Edition
(入门类:
C++ Primer, 4rd Edition
Thinking in C++, 2nd Edition
The C++ Standard Library: A Tutorial and Reference
进阶类:
The C++ Programming Language, Special Edition
The Design and Evolution of C++
Inside C++ Object Model
C++ Templates: The Complete Guide
STL 源码剖析
Generic Programming and the STL
Modern C++ Design: Generic Programming and Design Patterns Applied
应用技巧类:
Effective C++, 2nd Editon
More Effective C++
Exceptional C++
More Exceptional C++
Effective STL
Ruminations on C++)
三:第三阶段
API/SDK------------- 《windows程序设计》(Jeff Prosise)
这书主要是开发Windows软件要深入研读的,毕竟是WindowsAPI。如果是主攻C++,那么这本书你可以大概略读一遍,不用过多的深入追究,QT才是C++主要深入思虑的关键。
四:第四阶段
MFC----《VC++技术内幕》、《深入浅出MFC》及视频教程孙鑫 VC++6.0
如果是C++,QT是要重点学习的对象。
五:第五阶段
COM/DCOM/ATL/COM+---------《COM技术内幕》
未知阶段:
《数据结构》,《算法导论》这些基本是编程的核心了,编程的很大情况都依赖于算法的实现,这个两门基本要深入研究,这是决定编程能力的核心标准。
如果不弄底层的话,《操作系统原理》可以简单地了解。
2. stl源码剖析 为什么要使用仿函数
STL(standard template libary),标准模板库。
这是C++标准的一部分。关于这个库有不少历史可以说,侯捷的《STL源码剖析》讲了不少。STL有好几种不同的实现,微软也有自己的实现。
关于使用,比如你用了下面的语句:
#include <vector>
就是使用了标准模板库里的 vector.
然后你这样声明向量:
vector<int> a; //向量a包含的元素是int型的
vector<double> b; //向量b包含的元素是double型的
你可以查找对应的头文件,它们都是以源码形式出现的,不过里面的符号定义的让人眼花缭乱,还是找书看比较好。
标准模板库包含了数据结构和算法等方面的内容,比较复杂,学习之前要有十足下信心。
3. 学习stl源码剖析前需要先看哪些东西
《STL源码剖析》不是讲怎么样使用STL和STL技巧的,是关于STL核心代码的剖析,是面向有丰富经验的STL程序员来补充和更好的理解STL底层核心机制,初学者看这本书的话基本上是一头雾水,建议先从基础学起,C++标准程序库 和C++stl是比较好的入门且使用的书籍,以后有了一定的STL经验,再去研究STL源码剖析,相信那时候你就会有了另一番对STL的领悟。
4. 《STL源码剖析》pdf下载在线阅读,求百度网盘云资源
《STL源码剖析》侯捷电子书网盘下载免费在线阅读
链接:
书名:STL源码剖析
作者名:侯捷
豆瓣评分:8.7
出版社:华中科技大学出版社
出版年份:2002-6
页数:493
内容介绍:
学习编程的人都知道,阅读、剖析名家代码乃是提高水平的捷径。源码之前,了无秘密。大师们的缜密思维、经验结晶、技术思路、独到风格,都原原本本体现在源码之中。这本书所呈现的源码,使读者看到vector的实现、list的实现、heap的实现、deque的实现、Red Black tree的实现、hash table的实现、set/map的实现;看到各种算法(排序、查找、排列组合、数据移动与复制技术)的实现;甚至还能够看到底层的memory pool和高阶抽象的traits机制的实现。
作者介绍:
侯捷,出生于1961年09月28日,台南县柳营乡人,南京大学客座教授。第一次在大陆大学授课: 南京大学软件学院 and 同济大学软件学院。
5. stl源码剖析什么水平能看懂
高水平。芦缓STL是步进触点指令SequentialFunctionChart的简称,是PLC命令,用来作顺序功能图。是一种很很复杂的源码,在没有学习过的情况下是看不懂的,因此是很高水平的才能看懂源码剖析。此种命令可以让我们程式设消毁计人员在程式规划时,能够像平时写流程图一样,对于程式的步序更为清楚,更具有可拿哗备读性。
6. 有关C++ STL 方面的书哪些比较好
《Effective STL》,《STL 源码剖析》 ,英文的《The C++ Standard Library — a Tutorial and Reference》
STL源码剖析
学习编程的人都知道,阅读、剖析名家代码乃是提高水平的捷径。源码之前,了无秘密。大师们的缜密思维、经验结晶、技术思路、独到风格,都原原本本体现在源码之中。在你仔细推敲之中,迷惑不解之时,恍然大悟之际,你的经验、思维、视野、知识乃至技术品位都会获得快速的成长。
本书所呈现的源码,使你踏上了基度山岛。源码之前了无秘密,你将看到vector的实现、list的实现、heap的实现、deque的实现、Red Black tree的实现、hash table的实现、set/map的实现;你将看到各种算法(排序、查找、排列组合、数据移动与复制技术)的实现;你甚至能够看到底层的memory pook和高阶抽象的traits机制的实现。
7. 有没有关于C++开源软件解析的书籍
“开源软件解析”?你的意思是源码剖析or源码阅读方法?
我所知道的(眼界有限,见笑了)纯粹C++的有:
《STL源码剖析》(作者侯捷,深入浅出剖析地STL源码的组织结构及其细节,值得推荐)
《C++网络编程 第一卷》(书的作者就是ACE的作者,主要向我们展示ACE的设计理念,如果你对网络编程不感兴趣,可以不用看)
关于源码阅读方法,我所知的有:
《代码阅读方法与实际》(书中列举了大量NetBSD的源码)
Linux源码方面的书貌似有不少,Apache,Nginx的源码书也有不少;这些好像都是纯C写的。
不过想要读懂这些和特定领域有关的开源代码,光有语言基础是不够的,还有足够的“领域知识”。读任何操作系统源码前你起码应该知道其上的API如何使用,读web服务器源码前你起码要知道TCP,HTTP协议的区别与联系,读物理引擎的源码前你起码要有高中物理的知识储备和线性代数的基础