 鲜花( 0)  鸡蛋( 0)
|
记得我在北京达内学习的时候,刚入学时老师给了一本C++基础参考书,后来学了一段时间有了一定的C++基础后就想换换别的参考书看看,在咨询了老师后,老师给列出了下列书籍,我觉得对我很受益! ~: U. }( n3 x3 l9 w0 i! z5 T* Y
) Y. q/ l5 Q, G1 }) l( i
,今天拿出来晒晒,跟大家一块分享。
- H0 _+ J4 c5 y+ s7 |) ?% f1 A& Z) B0 ^3 m3 J X. w
推荐的阅读顺序:7 ?3 V" p$ p# f7 b' [+ \* \( Q$ ?' k" y
! Q! D& }# U7 K( L' A+ F) Z& l+ q
level 1
4 i0 J: Z9 `: k: q3 r! ?; J6 n) m2 f, Q5 l4 s0 { j
从<<essential c++>>(可不看)开始,短小精悍,可以对c++能进一步了解其特性
8 L2 f$ i2 [ \. J* n, `+ c9 T/ z0 X* b( t) g
以<<c++ primer>>作字典和课外读物,因为太厚不可能一口气看完; c5 Z" k, J( h' Z8 I
0 O6 [( D- S$ i: I- F; \
level 20 a. t. Z7 e2 a( M6 q
6 @9 W8 H4 f; C) z* Y
然后从<<effective c++>>开始转职,这是圣经,请遵守10诫,要经常看,没事就拿来翻翻
& k4 W! g' ]) p) a! N, z
- \4 x+ U/ S/ }' R5 z接着是<<exceptional c++>>,个人认为Herb Sutter主席大人的语言表达能力不及Scott Meyers总是在教育第一线的好
$ v$ ]0 ~* k3 I3 ^% g5 E5 Z
9 u# B* S* O( k, _/ L顺下来就是<<more effective c++>>和<<more exceptional c++>>,请熟读并牢记各条款
* b( |8 \: Y2 {9 I4 _" `+ r+ ~% x4 W& v' z# \. z* [/ n
当你读到这里,应该会有一股升级的冲动了
X1 z/ x7 y" i2 p: T: L' c) ~4 L* \
level 3
, ^- w1 F# `9 D# H# n
3 `& u3 y4 ^3 k<<insied the c++ object model>>看过后如一缕清风扫去一直以来你对语言的疑惑,你终于能明白compiler到底都背着你做了些什么了,这本书要细细回味,比较难啃,最好反复看几遍,加深印象
8 A9 Z E3 ^8 @2 {1 Y$ F3 u3 t- i9 d$ f$ j! o* J
看完上一本之后,这本<<The design and evolution of c++>>会重演一次当年C++他爹在设计整个语言过程中的历程$ d) {( o% V H$ e# U `
* B* v% H. t+ Y1 D4 o- I: O
level 46 z( G7 l; S" Q' M7 C) }
( ?2 Q+ G, u7 a) v, E/ G# b
<<the c++ standard lipary>>是stl的字典,要什么都可以查得到* F( i$ Y7 Y5 K X ~# q0 A
4 Y6 ~4 J0 w6 `, A& A$ ~学c++不能不学stl,那么首先是<<effective stl>>,它和圣经一样是你日常行为的规范( y1 {0 g" N, L
, [, B; y) _1 I* Q4 c" |
<<generic programming and the stl>>让你从oo向gp转变
8 c6 [, N2 V* @
2 M3 f- f' [5 g0 @7 O) v$ w: }$ b光用不行,我们还有必要了解stl的工作原理,那么<<stl源码剖析>>会解决你所有的困惑
6 U |! l2 ~. l( h2 D+ T( R- h# o/ B$ u5 G& _2 H5 E
level 5( V# d: f6 f" w- L! F+ @2 D( F
+ Y5 I7 O4 K, K& @2 B9 e对于c++无非是oo和gp,想进一步提升oo,<<exeptional c++ style>>是一本主席这么多年的经验之谈,是很长esp的4 e/ J* s1 _* @# [
4 Y; G, @+ t' z& G% N一位stl高手是不能不去了解template的,<<c++ template>>是一本百科全书,足够你看完后对于gp游刃有余
v0 x! R: U \4 y3 V& k, ~3 X2 u0 W
<<modern c++ design>>是太过聪明的人写给明眼人看的# ^) j: q. f h
* l) V( O1 g8 n/ a5 Q% Y+ h$ L3 x
好书有很多,不能一一列举
/ |8 Z( Q2 v/ r) ^# m% Q7 ?: q& Y Q1 r2 U+ T
以上我的读书经历,供各位参考。; k& p, Y8 B6 s3 m
余下的无非就是多看多做练习了,最后就等着量变到质变的过程了。等着进阶到高手行列了!+ ~2 k+ b) g2 T
转自:http://www.bjtarena.com/ |
|