 鲜花( 0)  鸡蛋( 0)
|
记得我在北京达内学习的时候,刚入学时老师给了一本C++基础参考书,后来学了一段时间有了一定的C++基础后就想换换别的参考书看看,在咨询了老师后,老师给列出了下列书籍,我觉得对我很受益
8 b! _/ k" e5 E: c b, p0 A
& S& J+ _( N; y1 },今天拿出来晒晒,跟大家一块分享。
' K/ p e+ |7 `. X: a7 C: g; n D5 {6 O4 o
推荐的阅读顺序:
% V' T. v! p! S/ T/ E+ n( r( }! ]9 a. P- J4 k. q3 L
level 18 V# f1 y. A6 X8 m! `; F' e& i# U
& ^$ `# B0 R3 A# u: Z3 P9 }( w
从<<essential c++>>(可不看)开始,短小精悍,可以对c++能进一步了解其特性
2 t! W% \0 Z2 r0 I0 I
1 P! X6 i- z' I$ m3 U& u* ~3 F# G以<<c++ primer>>作字典和课外读物,因为太厚不可能一口气看完
" m" m1 [( m( g
9 ]0 x P8 n2 A3 @ r/ K. N$ Xlevel 2
$ Y' \$ y: [# _8 L; M# e" P2 E( v, w$ B& J& b! J+ m
然后从<<effective c++>>开始转职,这是圣经,请遵守10诫,要经常看,没事就拿来翻翻; V: l; r. c7 i, p/ `8 Y) R4 k3 m1 `
4 F( v1 J" E$ |( g5 }& {: g3 w接着是<<exceptional c++>>,个人认为Herb Sutter主席大人的语言表达能力不及Scott Meyers总是在教育第一线的好$ d& j( {" s9 M& ]
* h. f% W @0 Y* E9 z
顺下来就是<<more effective c++>>和<<more exceptional c++>>,请熟读并牢记各条款0 ^6 l2 a! R }/ Y. D
/ g- |2 B6 t/ a# y& D* p! ^当你读到这里,应该会有一股升级的冲动了* Z* S' a _5 u9 B/ O
3 Q. a+ ^4 r! p% blevel 3
( |9 A0 j/ `9 u+ [4 O$ A0 X) N( w3 V" Z" [8 u y
<<insied the c++ object model>>看过后如一缕清风扫去一直以来你对语言的疑惑,你终于能明白compiler到底都背着你做了些什么了,这本书要细细回味,比较难啃,最好反复看几遍,加深印象; w+ J# W+ r& `4 A/ P
. g2 s p- v8 m8 N, n
看完上一本之后,这本<<The design and evolution of c++>>会重演一次当年C++他爹在设计整个语言过程中的历程
4 v$ l3 o _" E8 ~& O5 y
# C' Q( O* U" Nlevel 4
9 U2 m* q& G' g8 j9 h4 `; u+ U& y% Q7 K6 H, O. ]3 W$ K. [2 `- P
<<the c++ standard lipary>>是stl的字典,要什么都可以查得到
- r2 C. M: e/ V/ h4 _1 c+ y1 F* o4 e7 C" K- j' y
学c++不能不学stl,那么首先是<<effective stl>>,它和圣经一样是你日常行为的规范
+ D$ M- V3 Y' F4 c ~5 L# B' t% _( b3 a$ F* E- T
<<generic programming and the stl>>让你从oo向gp转变2 ?7 z* I, H4 X# m# a+ |& _: L
' H; @* z" v3 O( N) u# ?& F5 B光用不行,我们还有必要了解stl的工作原理,那么<<stl源码剖析>>会解决你所有的困惑 ^$ q5 w% k) r& q8 f
8 T$ L& D" F! F5 p. Y
level 5# {6 G$ R9 x6 `+ j6 k3 Q
' b9 K3 W5 T* I" T. [对于c++无非是oo和gp,想进一步提升oo,<<exeptional c++ style>>是一本主席这么多年的经验之谈,是很长esp的
5 b" n4 P# ~8 C8 F! @( f. o* _# O; v! ?/ C5 A
一位stl高手是不能不去了解template的,<<c++ template>>是一本百科全书,足够你看完后对于gp游刃有余
9 _) T( V: B8 p( \ ]) \# U3 v
8 O7 Y- d$ ]) b% N<<modern c++ design>>是太过聪明的人写给明眼人看的
4 m! V8 c' H0 M% Q1 ^8 y+ @& p# T0 T, `
好书有很多,不能一一列举; ]+ y& X" W3 ]/ j& p
& |& O! ]! q0 j3 K N以上我的读书经历,供各位参考。
( j+ P! o% e$ d) d c余下的无非就是多看多做练习了,最后就等着量变到质变的过程了。等着进阶到高手行列了!
+ W. a' G0 j. u5 u转自:http://www.bjtarena.com/ |
|