星期三, 8月 29, 2007

Inside the C++ Object Model

花了整個大四才看完這本書,這本書讀起來非常拗是原因一,自己愛浪費時間打電動是原因二,功課忙是原因三。但最後,還是在幾天前把這本書讀完了。ptt上的C_AND_CPP版說這本書不難,只是講的很細,不過我讀起來感覺難度還是很高,可能我的C++程度只是中等而已吧。

因為這本書已經有點年代,很多implementation可能都已經過期,所以當初還猶豫要不要讀這本,但讀了之後幫助還是很大,知道「C++物件模型是如何利用vtbl實現虛擬函式」這類的細節問題的答案還是其次,比較大的收穫,是知道哪些東西是C++標準硬性規定的,程式碼下去結果就一定是這樣,哪些東西目前是如此,但只是大家約定俗成可能隨時會改變,哪些東西根本跟程式設計師想的可能完全不一樣(如,delete[] ptr,ptr為指向衍生類別陣列的基底類別指標),哪些東西是Compiler處理,哪些東西是Linker處理,哪些東西是隨Compiler高興(如,複製建構子的發動)等。

因為讀第一遍很多東西是硬食進去的,接下來的計畫是把這本書讀第二遍,讀第二遍應該會很快,至少今天讀的感覺是如此。

接下來猶豫到底要讀哪本書?或許是把The C++ Language的前半本看完,專心研究RTTI、Exception這些我當年身為C設計師少碰的東西,後半本專門講STL比較少用就先跳過。跑去讀Design Pattern也是不錯的選擇,人家說這本是天書啊XD,還有好多好多的書可以選,比如硬碰硬硬食ISO 14882 XD

有太多有趣的東西等著我研究,真的不知道該怎麼辦XD 全文連結

0 意見: