C++學(xué)習(xí)–基礎(chǔ)篇(書籍推薦及分享)

算起來,用C++已經(jīng)有七八年時間,也有點可以分享的東西;
以下推薦的書籍大多有電子版。對于技術(shù)類書籍,電子版并不會帶來一個好的閱讀體驗。如果喜歡,最好找紙版(圖書館是個好去處);電子版更適合作為一個參考書籍常備電腦。
內(nèi)容目錄:
C++入門
語言技巧,性能優(yōu)化
STL
Boost
設(shè)計模式
一、C++入門
C++ Primer

一本小白到專家都可以看看的大書,新手可以先看入門的章節(jié),重點是要跟著書把代碼打一遍。然后找個開源項目或者去圖書館找任意一本項目書完成一個小項目。到了水平或者有需求時,再回頭學(xué)習(xí)高級章節(jié)。
二、語言技巧,性能優(yōu)化
Effective C++

有了語言基礎(chǔ)之后,接著就是細(xì)節(jié)上的深入,進一步領(lǐng)會C++的精髓。《Effective C++》可以看作是一本C++ 疑難解惑手冊; 對于C++語言層次深入一點的東西,容易出錯的知識點,在這邊書上可找到滿意解答;適合多次品味。
三、STL
STL源碼剖析

每一個推薦深入STL的文章應(yīng)該都少不了這本書。不管是作為工具書,還是校招或社招的考點書籍,都能找到想到的答案。
下面幾個問題可以考查一下是否需要看看:?
STL中DQueue的實現(xiàn)機制(數(shù)據(jù)結(jié)構(gòu)式如何組織的,其迭代器的插入和刪除過程中的實現(xiàn))
是否熟悉紅黑樹,能否敘述其插入和刪除過程,如何調(diào)整。
萃取器的幾種實現(xiàn)
四、Boost
Boost程序庫完全開發(fā)指南

當(dāng)標(biāo)準(zhǔn)庫無法再滿足你的時候,就輪到Boost出場了。編程,講究兩個效率,一是開發(fā)效率,二是運行效率。與其它編譯型語言相比(java、C#等),C++屬于后者,運行效率不錯,但開發(fā)效率著實低。除了C++更底層的原因外,另一方面的原因就是標(biāo)準(zhǔn)庫提供的功能不足。沒有太多的工具,想實現(xiàn)什么都得自己來一遍,重復(fù)的造輪子的工作在程序員中不斷上演;
Boost庫是對C++標(biāo)準(zhǔn)庫的擴展,讓我們在開發(fā)的過程中有更多的工具可以選擇。正則表達(dá)式、智能指針等工具都是非常有用的工具,而函數(shù)對象,Lambda則讓我們在編寫C++的代碼中更為優(yōu)雅;
這里提供的一本書是國內(nèi)寫的比較好的一本書。它的目的就是讓你對boost產(chǎn)生興趣。等有了興趣之后,就直接上boost的官網(wǎng)吧,需要什么盡管拿。
五、設(shè)計模式
設(shè)計模式

是該領(lǐng)域的圣經(jīng),未全看完。雖說經(jīng)典,但一頁一頁的翻完,還真要點耐性。不像老外寫書的風(fēng)格,這本書看的很累(這也是一本參考手冊)。我認(rèn)為在對大部分模式都有一定的了解后再來看這本書,會找到很多興趣點。
Head First設(shè)計模式

這本書從事例導(dǎo)引設(shè)計思想,是很好的入門書。有一點代碼是java實現(xiàn)的,不過設(shè)計模式是種思想,每種語言都能用??梢韵扔眠@本書熟悉使用場景,再用C++語言去實現(xiàn)。
本文為【拿OFFER】原創(chuàng),轉(zhuǎn)載請標(biāo)明出處。