1. c++裡類概念的目標就是為程序員提供一種建立新類型的工具,使這些新類型的使用能像內部類型一樣方便。此外,派生類和模版提供了一些將相關的類組織起來的方法,使、程序員可以利用類之間的相互關系。
2. 如果一個變量是類的一部分但卻不是該類的各個對象的一部分,它就被稱為是一個static成員。與此類似,一個需要訪問類成員,然而卻並不需要針對特定對象去調用的函數,也被稱為一個static成員函數。
3. 在函數聲明的參數表後面出現的const,指明這些函數不會修改對象的狀態
4. 如果在一個類的外面定義它的const成員函數,也需要給出const後綴
5. 在類的非const成員函數裡,this的類型就是X*。然而,this並不是一個常規變量,不能取得this的地址或者給它賦值。在類X的const成員函數裡,this的類型是const X*。
6. 對於用戶而言,這個函數看似沒有改變其對象的狀態,然而,它卻可能更新了某些用戶不能直接訪問的細節。這通常被稱為邏輯的常量性。
7. 存儲描述符mutable特別說明這個成員需要以一種能允許更新的方式存儲,即使它是某個const對象的成員
8. 經常有這樣一種情況,一個類有一批和它相關聯的函數,而它們又未必要定義在類裡,因為它們並不需要直接訪問有關的表示。
9. 一個union成員,它們不能有構造函數和析構函數。一般來說,編譯器無法知道被使用的是聯合的那個成員;也就是說,無法知道存儲在聯合中的對象的類型。因此,聯合也就不能包含帶構造函數或析構函數的成員,因為無法保護其中的對象以防止破壞,也不可能保證在聯合離開作用域時能調用正確的析構函數。