此前,自己學習C++書看了不少。《C++ Primer Plus》 5th (當時以為是《C++ Primer》)是自己看的第一本C++的書籍,此書看得我頭昏眼花的,整個看書的時間就有半年,由於當時過分注重細節,而且圖速度,沒能很好的實踐,也就是一個一知半懂,但是基本上形成了一些影像,能看懂一般的代碼了。此後就亂看了一些,都很雜,而且沒有系統看,直到半年後拿起《Thinking in C++》上卷在暑假裡看完了,他的裡面涉及了一些編譯工作以及makefile等東西,對於我這種非電腦專業的人來說還是看的蠻有意思的,後來一口氣又買了第二卷(“實用技術”),那本書就看得我鬱悶了,特別是那個模板部分,後來開學就沒咋看了。期間又買了《C++ Primer》4版,看到第八章就沒看了。此前的學習基本上就是以物件導向的學習為主,零星看了一些模板啥的。
在今年,買了《Effective C++》3rd,看了之後恍然大悟,難怪有人將C++程式員分為兩類,看過《Effective C++》和沒有看過的。而且由於前面的學習又忘了差不多了,抱起《Essential C++》看了一遍,Lippman果然是大師,看得比較有意思,而且基本上把C++的樹枝都描出來,唯一缺少的是樹葉。然後看了《C++ 沉思錄》前九章,(後面沒看是因為當時想用impl把習題做出來,但是一直沒做-_-!),此本也是好書(我看過他的《C trips and traps》,寫得很不錯)然後把以前沒有看的《Thinking in C++》第二卷看了一下,覺得裡面的異常部分還是講得很不錯的。然後把他的STL和演算法瀏覽了一下。而且把《Exceptional C++》也瀏覽了一下。最近在看《Modern C++ Design》,裡面的技巧確實amazing.(但是最近要準備研究生入學考試了,估計看不下去了),以後打算買本《C++ Template》來看一下,C++的模板簡直就是一門新的語言嘛。我接觸到了一些設計模式的東西,打算以後買本Gof的《設計模式》來好好學習一下。
下面把自己看的一些書來點小結吧:
《C++ Primaer Plus》5th ,這本書是一個大磚頭,而且字小,裡面內容很多,作為基礎入門不錯,例子很多。但是我不喜歡他把什麼小東西都用一個完整的程式來表述,代碼看得我痛苦死了(或許是當初基本功還不夠吧)。但是這本書對STL和模板基本沒有介紹。
《Thinking in C++》第一卷 比較適合有一定C基礎的人來看,裡面的內容還是一如既往的瑣碎,而我很欣賞這本書的一個方面是因為他的頭三章,講的東西很有意思,讓你從一定高度看待C++學習。
《Thinking in C++》Vol 2這本書東西並不是很有條理性,並不適合作為參考書籍。而且技術性比較強,他什麼都講,但是深度都不夠,所以我現在看這本書的時候有點雞肋的感覺,作為 STL的參考不及《STL_Programmer_Guide》,模式設計也講得很淺,而模板部分更是沒有條理性,我當時卡在這裡卡死我了,如果真想好好學習一下Template建議看《C++ Template》。多線程?我看那是在講那個庫的API還差不多,我又不會去用,看你幹嘛,C++多線程也有一本書的,有中文版,叫什麼我不記得了。
《Effective C++》,強烈推薦買一本,此書是值得看完一遍再看一遍的書,每次看完收穫都不同,而且其中包含的條款在《Exceptional C++》也有提及,所以,買了這本連《Exceptional C++》可以不用買了(儘管,這本書在一場上面寫得還是很不錯的)。
《C++ 沉思錄》,中文本書儘管我只看了前十章,但是感覺很不錯,裡面將pimpl手法講得很清楚,如果看了這本就應該不用看他的《Accelarate C++》了。這本書讓我學會思考,為什麼要這麼做,這個技術是解決一個什麼問題,我覺得多思考是很不錯的。以後有機會再把他看完吧……
《C++ Primer》?這本書就不用做過多評論了,絕對好書,裡面內容很全,而且對C++能幹什麼講得很清楚(儘管自己沒有看完,我是把那本書當參考書用的)。
未來打算看,或者正在看的書《Morden C++ Design》,《設計模式》,《C++ Template》……