 鲜花( 0)  鸡蛋( 0)
|
记得我在北京达内学习的时候,刚入学时老师给了一本C++基础参考书,后来学了一段时间有了一定的C++基础后就想换换别的参考书看看,在咨询了老师后,老师给列出了下列书籍,我觉得对我很受益
2 B4 P( l( i$ b0 ~' J3 g
" U9 A; T0 U9 e/ p) ?,今天拿出来晒晒,跟大家一块分享。" z: h; ]* T! P. ^9 P
$ B& i1 J0 w5 W+ z, j" r$ D推荐的阅读顺序:2 I; ?2 J9 s( `& Q& v& C
. f0 p. ^7 w/ y; s, ulevel 1; z2 i% H- v: R3 o% J
, v9 D8 O. H C5 g! O e5 W! R
从<<essential c++>>(可不看)开始,短小精悍,可以对c++能进一步了解其特性
7 x" S8 ]: X7 R- Y/ t/ {6 Y- [% b) ~+ }
# p: {! e1 K7 R8 g B8 w以<<c++ primer>>作字典和课外读物,因为太厚不可能一口气看完
7 S ~, K5 p, f) {
" O' {. h7 I/ z1 W1 M6 alevel 2# p! \$ k: n r) g% X; a! p7 ^
# y# o3 P; h6 E; s- i
然后从<<effective c++>>开始转职,这是圣经,请遵守10诫,要经常看,没事就拿来翻翻+ x* r$ a, U$ L2 c, a) Z. c
' I- a2 ~6 y l) H# x6 w接着是<<exceptional c++>>,个人认为Herb Sutter主席大人的语言表达能力不及Scott Meyers总是在教育第一线的好
9 h% h' H8 N4 j$ W/ h" y, p. \2 P3 a# @3 K j1 l$ H/ `2 d
顺下来就是<<more effective c++>>和<<more exceptional c++>>,请熟读并牢记各条款: o' o- b% i; t* r/ ^* C+ C
5 g0 l7 L$ @; M! g$ f" B当你读到这里,应该会有一股升级的冲动了% u! Z9 y/ R$ q( v2 `
3 o+ |( v/ k0 K6 n0 {2 h/ Mlevel 3! l& m8 |; T6 z
! X7 X& k% b5 g<<insied the c++ object model>>看过后如一缕清风扫去一直以来你对语言的疑惑,你终于能明白compiler到底都背着你做了些什么了,这本书要细细回味,比较难啃,最好反复看几遍,加深印象& ?6 _7 r; @: I3 t; i' f8 b- F- z, T
9 A1 _6 B: o! v4 M o4 o+ D
看完上一本之后,这本<<The design and evolution of c++>>会重演一次当年C++他爹在设计整个语言过程中的历程
, G& C) I; O# l5 o+ b$ u: h- W
. V* _# ?1 d, a: m0 i: k- alevel 4% Q7 x% a: |+ d* Z
' ^7 ^, ]$ z4 J) G! Z<<the c++ standard lipary>>是stl的字典,要什么都可以查得到
' S# v9 y4 T/ `
6 j8 n" M& c/ K9 _学c++不能不学stl,那么首先是<<effective stl>>,它和圣经一样是你日常行为的规范
3 E) ~) W, l6 d: s9 x" Y% J
9 ^+ c% n+ K2 E6 }/ B/ D, j. D& G<<generic programming and the stl>>让你从oo向gp转变
, D3 v* C% u1 q- f* h/ o0 @2 `
( t& E' Y. }2 R8 O. \0 B光用不行,我们还有必要了解stl的工作原理,那么<<stl源码剖析>>会解决你所有的困惑. p6 L% Z, W- A& ]6 @
/ u6 N, _" U& E T2 l. z
level 5- h2 q0 L. G: T0 ]3 f# l
* Z' B! P! x0 G& G- y' p( Z对于c++无非是oo和gp,想进一步提升oo,<<exeptional c++ style>>是一本主席这么多年的经验之谈,是很长esp的
. t1 W/ i, D& B( h
2 j( A; m% \' C2 S$ S一位stl高手是不能不去了解template的,<<c++ template>>是一本百科全书,足够你看完后对于gp游刃有余
! ]$ f5 f2 q7 n, I3 f) Q9 J6 m5 a( s [4 w; u9 v
<<modern c++ design>>是太过聪明的人写给明眼人看的
$ D" ?$ W9 j$ T, n) `/ t
0 W1 j2 F% ~; _! ]/ l! e好书有很多,不能一一列举. z _; }6 i7 d) U
' T7 b# E; W" _# M/ O% |" x& v2 _
以上我的读书经历,供各位参考。. E& F, z$ j6 P1 Q9 b% `
余下的无非就是多看多做练习了,最后就等着量变到质变的过程了。等着进阶到高手行列了!0 u; Y% ~6 o2 @# r6 R9 B# B6 U
转自:http://www.bjtarena.com/ |
|