云风大大于05年推荐的C++经典书籍

作为一个程序员,我崇拜着许多前辈,侯捷老师、云风大大是其中的两位。

我能够坚持用文字分享生活三年多,侯捷老师的《左手程序右手诗》给予了我很大帮助;我会时不时打开云风的博客看看,看看大大最近写了哪些文章。

前些天看到云风在26岁时写过的一本书,书名叫《游戏之旅------我的编程感悟》,书中有一段关于C++书籍的推荐。虽然这推荐写于2005年,但我认为并不过时,我依然想要为其做一次摘抄与分享,于是有本篇不推送的更新。

以下是云风大大的推荐原文,摘自《游戏之旅------我的编程感悟》第9.4.7小节:

本章并非一个C++的教学,也不是一份C++的入门读物。我作为一个C++的爱好者,对C++研究多年,学得越多,越是发现C++的博大精深。

许多对C++的认识也是螺旋上升的,以前认为糟糕的方法有一天有可能重新拿回来使用,一些精彩的东西也会在几年之后放弃。不断地学习,不断地认识,终有一天会进入C++大师的境界。我现在也无法把自己学会的东西,理解的东西借助文字教给新入门者,因为许多的知识需要自己在实践中领悟。过多的细节,太快地展现出来反而会增加学习的复杂度,落得无法消化。

以上,我尽量用简短的文字把C++美好的一面展现给大家,这里只是C++语言的一个很小的角落,甚至只是我对C++了解的部分中的一角。如果读者期望C++成为自己开发中的利器,就应该多用C++做项目,尽可能地体验更多的设计方法,用心去写程序,而不是单单去实现而已。自己写出的代码,多多思考,对感觉不好的部分重新设计。

学习C++,多看这方面的专著是必修课。这个方面,我推荐以下的阅读次序:

学习C++首先应该学会C,至少也是C++中类似C的那个部分。如果完成了这个阶段而想做一个C++入门,首先推荐的还是《C++编程思想 》,然后是C++ Primer 和C++祖师爷的专著The C++ Programing Language。后两本都是大部头,或许没有前一本读得快,但也绝对是值得耐心看完的好书。

无论何时,一份C++标准文档都是很有参考价值的,在你对C++的语法点产生疑惑的时候,最好的方法不是去查某本C++教材,而是直接翻阅标准文档。

只是不像前面三本书,C++标准文档(最新的一份是1998年制定的)没有中文译本,而且似乎也只有电子档.不过好在通常我们也不需要躺在床上一页页地阅读,电子档更适合检索。

深入了解C++应该从其设计的根源及C++编译器实现方法入手。同样是C++的发明者的著作《C++的发展与演化 》对于众多C++爱好者都是一本不可放过的好书。而另一本由C++ Primer作者所著的《深度探索C++物件模型》对追求高效的C++程序员尤为有用。

这两本书的中译本都翻译得非常流畅,读起来是一种享受。

另外在C++的进阶学习上,还推荐Effective C++More Effective C++ 以及《C++沉思录》,这三本书也有中译本,不过都需要有一定的C++开发经验才适合阅读。

近年来,泛型编程非常流行,我不主张其被滥用,但是作为C++爱好者也一定是要了解的。侯捷先生的大作《STL源码剖析》是首先值得推荐的,虽然对于泛型技术的初学者有点难,不过花上点时间也能读懂,而后能获得巨大的收获。

如果你对C++中的template这个关键字的使用有足够的自信,对泛型编程自我感觉良好,那么可以去读一下《C++设计新思维------泛型编程与设计模式之应用》,我保证这本书会让你叹为观止。一本颇有些难度的书哟,阅读之前请做好心理准备。

如果只是想更加精通C++的标准库,暂时还没有想过研究boost甚至loki的源代码,那我先推荐《C++标准程序库 》,这简直是一本C++程序员案头必备的参考手册,一旦使用C++标准库进行开发,迟早你会买上一本的。除此之外,《Effective STL中文版》会和它的前辈Effective C++、More Effective C++一样,让人产生阅读的快乐。

相关推荐
唐棣棣29 分钟前
C++:单例模式
开发语言·c++·单例模式
智多星0011 小时前
c++Qt登录页面设计
开发语言·c++·qt
Tfly__1 小时前
ubuntu 18.04安装GCOPTER(最新)
linux·c++·ubuntu·github·ros·无人机·运动规划
code monkey.1 小时前
【探寻C++之旅】第一章:C++入门
开发语言·c++
程序员老冯头1 小时前
第二十三章 C++ 继承
开发语言·数据结构·c++·算法·继承
Dream it possible!2 小时前
LeetCode 热题 100_二叉树的最大深度(37_104_简单_C++)(二叉树;递归;层次遍历)
c++·算法·leetcode
yuyanjingtao2 小时前
CCF-GESP 等级考试 2023年12月认证C++二级真题解析
c++·青少年编程·gesp·csp-j/s·编程等级考试
m0_748239332 小时前
Linux下C++轻量级WebServer服务器 框架梳理
linux·服务器·c++
Michael_Good2 小时前
【C/C++】C语言编程规范
c语言·开发语言·c++
ZLRRLZ4 小时前
【C++】多态
开发语言·c++