 鲜花( 0)  鸡蛋( 0)
|
记得我在北京达内学习的时候,刚入学时老师给了一本C++基础参考书,后来学了一段时间有了一定的C++基础后就想换换别的参考书看看,在咨询了老师后,老师给列出了下列书籍,我觉得对我很受益3 Y3 f, {, O9 ?& H+ Z( t
: v' K" x# ~8 R( S6 h
,今天拿出来晒晒,跟大家一块分享。
; s7 S/ E' Y; S: y. s" o$ r- g9 I
& i0 _0 T% s. O3 I( f7 L. t推荐的阅读顺序:
7 h6 Q& }' _; O- F+ M5 j2 l- a
* f$ \# r1 j* s) i0 V( u' ?level 1 e7 y. o0 H N/ w+ D5 `' n& j9 H+ J
+ z3 k, s9 k- J/ V* ], T* s1 o# D
从<<essential c++>>(可不看)开始,短小精悍,可以对c++能进一步了解其特性9 P! T2 p d$ A6 y! W8 |2 x( f( K. ~
9 @: |2 U( M# N3 w8 J
以<<c++ primer>>作字典和课外读物,因为太厚不可能一口气看完0 W1 c) j6 E6 O! D9 o; u" G8 d
) a* ~9 P; L( y
level 2
8 l" G' R9 {5 ~3 K. q0 s
, Q$ C! b( g& h4 O9 f6 [% S然后从<<effective c++>>开始转职,这是圣经,请遵守10诫,要经常看,没事就拿来翻翻
. K7 Z+ j" V! H* ~( k7 L: q& w& [( s) u+ ?
接着是<<exceptional c++>>,个人认为Herb Sutter主席大人的语言表达能力不及Scott Meyers总是在教育第一线的好
& c: v; G; c4 k5 q* g
5 J8 W# `0 g5 s0 a: C- H) e顺下来就是<<more effective c++>>和<<more exceptional c++>>,请熟读并牢记各条款
{5 S& [$ W/ m
4 G# i( v; u' ~$ y- u$ k- n# w当你读到这里,应该会有一股升级的冲动了
1 ^. B4 O# y6 f. n% ^3 k J; _8 b8 \7 w- B% h
level 3
% k. N0 I) A1 |6 l' Q! F1 `( Z& A
<<insied the c++ object model>>看过后如一缕清风扫去一直以来你对语言的疑惑,你终于能明白compiler到底都背着你做了些什么了,这本书要细细回味,比较难啃,最好反复看几遍,加深印象
- n6 M6 |% N1 n- ^7 f$ d$ ]$ G; j* k' O0 ^6 r: c+ b9 S% J( I# |% [7 {* Z
看完上一本之后,这本<<The design and evolution of c++>>会重演一次当年C++他爹在设计整个语言过程中的历程
+ n& M% g& z" [2 b3 C8 X# b
" ^( D2 S' q- G) H, F- I; }9 Llevel 42 H6 D" E o1 N# N
6 [9 I. Y# T" h. O. Q- O- D7 d' L* w<<the c++ standard lipary>>是stl的字典,要什么都可以查得到" ], t; Q0 P; O, v* O4 c; z
1 t3 D5 |6 a$ O
学c++不能不学stl,那么首先是<<effective stl>>,它和圣经一样是你日常行为的规范
" L( L& d7 t$ q- F d
( E9 V/ y/ J( H<<generic programming and the stl>>让你从oo向gp转变
7 h& m) E2 @! S9 M: N$ B' x j5 ~" s" W, X* } ]* a
光用不行,我们还有必要了解stl的工作原理,那么<<stl源码剖析>>会解决你所有的困惑' p+ V. b* Q) D3 b: t0 [
! u. ]5 }3 @5 h9 R1 n% `# Tlevel 5
/ v/ j4 M+ F( d/ U3 D* t$ V: P6 a0 J* |$ u( p% D
对于c++无非是oo和gp,想进一步提升oo,<<exeptional c++ style>>是一本主席这么多年的经验之谈,是很长esp的
2 r7 K# S4 q4 T; f8 z! x9 n4 ?6 A: H0 ~; J2 g9 F
一位stl高手是不能不去了解template的,<<c++ template>>是一本百科全书,足够你看完后对于gp游刃有余
8 |( J. @, ?+ I0 a" i* O3 {
4 Q3 |4 E9 u: a! N4 C5 t e' t<<modern c++ design>>是太过聪明的人写给明眼人看的% y1 G; c4 A% X9 r; ]
I- B d( m: g( t4 z好书有很多,不能一一列举' ?( j0 Q. n* [! F* B; O
4 V0 c$ ~- d( ?7 n2 C7 v
以上我的读书经历,供各位参考。" M3 D& y/ Y% n) [
余下的无非就是多看多做练习了,最后就等着量变到质变的过程了。等着进阶到高手行列了!+ ]4 i# D# `) N z1 Q! t
转自:http://www.bjtarena.com/ |
|