`
colin115
  • 浏览: 39922 次
社区版块
存档分类
最新评论

C++学习–基础篇(书籍推荐及分享)

 
阅读更多

算起来,用C++已经有七八年时间,也有点可以分享的东西;

以下推荐的书籍大多有电子版。对于技术类书籍,电子版并不会带来一个好的阅读体验。如果喜欢,最好找纸版(图书馆是个好去处);电子版更适合作为一个参考书籍常备电脑。

我将分为基础篇、Windows篇、和Linux/Unix篇 三个部分来介绍这些经典书籍:

 

C++入门:

C++ Primer

我的C++入门读物是《C++大学教程》,这本书800多页,由于学习时间长,一个学期学这么一本书,时间上的富裕,让我有充分的时间来吸收。书中80%的代码我都敲到PC上运行过;后来再看《C++ primer》的时候,也就一个星期的功夫翻完了。都是入门读物,介绍的也都全面。刚接触C++的朋友,至少应该将这方面的书好好过一遍。

 

语言技巧,性能优化:

Effective C++》

C++必知必会

More Effective C++

有了语言基础之后,接着就是细节上的深入,进一步领会C++的精髓。《Effective C++》可以看作是一本C++ 疑难解惑手册; 对于C++语言层次深入一点的东西,容易出错的知识点,在这边书上可找到满意解答;适合多次品味。

《C++必知必会》《More Effective C++ 》则作为对Effective C++ 没有讲完的补充,可看作前者看完后意犹未尽时使用;

顺便说下,这三本书都不厚,小册子,每本也就几天的功夫就可以搞定;

 

底层硬货:

C专家编程

C和指针

C++源于C,对于指针、对于各种地址的偏移计算,对于大端小端的深刻剖析,还得靠一些硬通货来解析;这两本书虽说不厚,但读起来确实费劲,信息量很足,很多都是在平时C++使用中没有意识到的知识点,却又都是重要的点。让人有知其所以然的快感;

涉及到底层的东西,都是用来验证编程功底是否扎实。要想彻底掌握C++底层的东西,还是得看看专家编程,很好的两本书,指针等讲的很透彻。

 

STL:

C++标准程序库

泛型编程与STL

STL源码剖析

《C++标准程序库》是属于百科全书类型,讲解基础,但语言平淡(是以参考手册的角度来写的),没有勇气将其全部翻完,捡感兴趣的和自己很缺乏的部分看了看(里面关于智能指针方面的论述,还不错);

《泛型编程与STL》里面对萃取机制及各泛型的概念论述非常透彻,前6章为主要篇章,不可跳过。后面的可在实践中编码练习或查找。 后面章节可在看完之后做为手册使用,对STL中的常用算法和容器进行了归类讲解,并给出了相当数量的示例。

《STL源码剖析》每一个推荐深入STL的文章应该都少不了这本书。下面几个问题可以考查一下是否需要看看: 1.STL中DQueue的实现机制(数据结构式如何组织的,其迭代器的插入和删除过程中的实现) 2.是否熟悉红黑树,能否叙述其插入和删除过程,如何调整。 3.萃取器的几种实现。

 

Boost

超越c标准库——boost程序库导论

当标准库无法再满足你的时候,就轮到Boost出场了。编程,讲究两个效率,一是开发效率,二是运行效率。与其它编译型语言相比(java、C#等),C++属于后者,运行效率不错,但开发效率着实低。除了C++更底层的原因外,另一方面的原因就是标准库提供的功能不足。没有太多的工具,想实现什么都得自己来一遍,重复的造轮子的工作在程序员中不断上演;

Boost库是对C++标准库的扩展,让我们在开发的过程中有更多的工具可以选择。正则表达式、智能指针等工具都是非常有用的工具,而函数对象,Lambda则让我们在编写C++的代码中更为优雅;

这里提供的一本书是Boost的入门经典。它的目的就是让你对boost产生兴趣。等有了兴趣之后,就直接上boost的官网吧,需要什么尽管拿。

 

设计模式:

设计模式

设计模式精解

道法自然

《设计模式》是该领域的圣经,未全看完。虽说经典,但一页一页的翻完,还真要点耐性。不像老外写书的风格,这本书看的很累(这也是一本参考手册)。我认为在对大部分模式都有一定的了解后再来看这本书,会找到很多兴趣点。

《设计模式精解》我的设计模式之路是从这本书入门的,通过几个实例来解释模式的用法,以及为什么要用模式(这个可能更重要),不过全书也就讲了10来个模式,意犹未尽。对设计模式感兴趣、初学者推荐;

《道法自然》是国人写的很不错的一本书,用他们自己写的一个框架系统作为实例,贯穿全文,讲解各种模式的用法。看过后,体会到模式在大项目,特别是这种框架系统中的应用真是太到位了。同时,熟悉MFC的朋友会在本书中收获更多的东西,MFC也是一个框架系统,通过本书的讲解,可以体会到MFC的内部设计以及为何如此设计(书中就专门讲到MFC中的设计思想),同时,在讲单件模式的时候,还带出了MFC中theApp的作用(为什么要在MFC中安排一个theApp全局变量?这是我看到的唯一一本书解释了这个问题的);

 

算法篇

编程珠玑

讲解数据结构和算法技巧的压轴好书。

基础篇就谈这些,后续将讨论C++的应用,Windows篇和Linux/Unix篇;

 

Posted by: 大CC | DEC26,2012

博客:blog.me115.com [订阅]

微博:新浪微博

1
5
分享到:
评论
1 楼 xjhssg 2012-12-27  
期待Linux/Unix篇!

相关推荐

    学习c++的书籍推荐

    学习c++的书籍的汇集,很好的从入门到精通的综合。

    C++书籍推荐学习顺序

    C++新手学习的开启之旅,按照文档中的顺序学习,你可以在很快的时间内成为一个合格的C++程序开发者,才能真正的开始进入这个领域,不管在游戏还是其他领域都会游刃有余

    C++ 初级学习书籍

    想学c++的朋友可以看看,学习基础知识.《C++ Primer 中文版(第5版)》所有示例均全部采用 C++11 标准改写,这在经典升级版中极其罕见——充分体现了 C++ 语言的重大进展及其全面实践。书中丰富的教学辅助内容、醒目的...

    c++学习路线图及其精品推荐书籍

    这是真正的c++学习路线图,分windows和linux两个大的方向,以及这个两个大方向的精品推荐书籍,再有就是在网络编程方面的书籍,对于那么学习了c++的语法以后不知道该如何进行下一步学习的同学非常有帮助。

    如何学好C++编程--书籍推荐及建议

    C++如何学习及经典书籍推荐。经典书籍及学习顺序。绝对经典。

    谭浩强C++学习基础书籍

    c++基础教程,适合初学者入门的一本好书。作者谭浩强,是一个编程重视基础的老师,强力推荐

    学习C++从入门到精通的的经典书籍推荐

    学习C++从入门到精通的的经典书籍推荐,列出世界各种c++的经典书籍

    易学C++[C++著名的基础书籍潘嘉杰著]

    C++著名的基础书籍潘嘉杰著,很适合初学者~~口碑很好的哦~~ 适合基础看的,大牛飞过~~~ 第一篇 过程化的程序设计 第1章 良好的学习开端 1 1.1 软件与程序 1 1.2 程序设计要做什么 1 1.3 选好一种语言 2 1.4...

    C++的学习方法及书籍推荐 (转载).doc

    看完之后将使你倍加学习C++的信心,学习是有方法的

    C++ 学习经典书籍 英文原版

    全部英文版,包括: Accelerated c++ C++Primer C++程序设计语言(特别版) Effective C++ Third Edition Essential C++ Exceptional.C++ More Effective C++ More Exceptional C++

    C++程序设计原理-与-实践-第二版-基础篇.pdf

    第二版C++程序设计原理与实践第二版基础篇.pdf

    C++学习书籍推荐.doc

    C++学习书籍推荐,是一个博客里摘录下来的,个人感觉还是比较有参考价值的

    C++模板教案(基础篇)

    C++模板教案(基础篇),从基础学习,易于理解接受为以后提高打基础。

    易学c++ 很好的c++学习书籍

    很好的c++学习书籍 建议去看看21天精通c++

    学习C++必看书籍

    学习C++必看书籍,只要看回了这些书,你就是C++牛人

    注释分析都非常详细的c++ 源代码 基础篇

    这些程序是我自己一个一个写的,现拿出来让和我一样的初学者分享一下,用的是dev C++ 编译,里面包括详细的分析过程和代码注释,有两个文件,一个是c++/c 基础的,另一个是基础提高篇,我相信对初学者是有很大的帮助...

    C/C++入门基础书籍名单

    本文件介绍了学习C\C++入门基础的重要书籍的名单,通过其可获得学习C\C++入门基础的重要书籍,对于学习C\C++入门的新手有很重要的作用,对于一些老手也有很值得学习的地方.

    这是一本C++入门书籍

    这是一本关于C++入门的书籍,难度适中,比较适合新手入门使用

    c++学习书籍

    c++学习书籍c++学习书籍c++学习书籍c++学习书籍c++学习书籍c++学习书籍

    C++学习指南(语法篇)代码+pdf(pdf可直接打印)

    这是 C/C++学习指南(语法篇) 对应的视频教材! 面向零基础的初学者。同时,书中还讲解了初级程序员所必须掌握的知识和技术,如“单步调试”,“编码规范”, ANSI函数库,文件操作,标准模板库STL的使用。 学习方法:...

Global site tag (gtag.js) - Google Analytics