《大規模C 程式設計》讀書筆記19

2021-04-15 02:30:01 字數 598 閱讀 5424

原則59:只保留乙個不透明指標(指向包含乙個類的所有私有成員的結構),會使乙個具體的類能夠將其客戶程式與其實現絕緣。

定義35:乙個具體類如果滿足下列條件,就是完全絕緣的:

只包含乙個資料成員,它表面上是不透明指標,指向乙個定義具體類的實現的non-const struct(定義在.c檔案中);

不包含任何其他種類的私有的或保護的成員;

不繼承任何其他類;

不宣告任何虛擬的或內聯的函式。

原則60:所有完全絕緣的類的物理結構在外表上都是一樣的。

原則61:所有完全絕緣的實現都可以在不影響任何標頭檔案的情況下進行修改。

原則62:沒有什麼辦法可以從乙個元件的外部通過程式設計來確定乙個元件是否為乙個包裝器。

原則63:乙個定義在a包裝器元件中的型別,無論什麼時候被傳遞進乙個定義在b包裝器元件中的型別中,b元件都不能訪問基礎的被包裝的實現物件,只能訪問包裝器的公共功能。

technorati : c++, 大規模c++程式設計, 讀書筆記

《大規模C 程式設計》讀書筆記23

technorati 標籤 c 大規模c 程式設計,讀書筆記 原則83 乙個類是乙個adt的具體規範,乙個元件是乙個抽象的具體規範。原則84 原則85 在任何可行的地方,延緩不必要功能的實現可以降低開發和維護成本,並且可以避免過早地進行精確的介面和行為設計。定義46 如果有效實現定義在乙個物件上的操...

《大規模C 程式設計》讀書筆記24

technorati 標籤 c 大規模c 程式設計,讀書筆記 原則92 可讀性 不僅僅是易用性 應該是使用運算子過載的主要原因。指導方針11 乙個過載運算子的語義對客戶應該是自然的 明顯的和直觀的。指導方針12 使用者自定義型別的過載運算子的語法屬性,應該反映已經為基本型別定義了的屬性。原則93 讓...

《大規模C 程式設計》讀書筆記25

technorati 標籤 c 大規模c 程式設計,讀書筆記 原則96 不必為了多型行為而損害語法問題,例如雙目運算子的對稱隱式轉換。原則97 虛函式實現行為上的變化 資料成員實現值的變化。定義47 隱藏 hide 乙個成員函式若與在乙個基類或檔案作用域中宣告的某個函式同名,則隱藏了那個函式。過載 ...