部分條款過於深奧,部分條款已了然於心,僅記錄當下所識所學對於常量巨集定義,最好用const代替#define
對於函式巨集定義,最好用inline代替#define
#include、#ifdef、#ifndef仍被需要
內建物件記得手動初始化
使用成員初始列替換賦值操作
以local static替換non-local static 單例模式
任何class只要有virtual函式都幾乎確定應該也有乙個virtual析構函式
只有當class內含至少乙個virtual函式,才為它宣告virtual析構函式
這樣可以保證資源「在構造期間獲得,在析構期間釋放」
以上規則並不適用內建型別、stl的迭代器和函式物件
關於template程式設計和template元程式設計的內容暫留
《effective C 》讀書筆記
1,c 關鍵字explicit c 中,乙個引數的 建構函式 或者除了第乙個引數外其餘引數都有預設值的多參建構函式 承擔了兩個角色。1 是個 構造器,2 是個預設且隱含的型別轉換操作符 所以,有時候在我們寫下如 aaa 這樣的 且恰好 的型別正好是aaa單引數構造器的引數型別,這時候 編譯器就自動呼...
Effective C 讀書筆記
一 讓自己習慣c 1 條款01 視c 為聯邦語言 c 的組成可分為四部分 1.c c 仍然以c語言為基礎。區塊 語句 預處理 內建資料型別 陣列 指標等都來自c。2.object oriented c c with classes所訴說的 classes 包括構造和析構 封裝 繼承 多型 virtu...
Effective C 讀書筆記
h class cpp const int num include include malloc,free new,delete new x,delete x.new x 100 delete x void x set new handler x 設定new記憶體不足時的響應函式 set new h...