程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++程序設計語言讀書筆記-C10 - 類

C++程序設計語言讀書筆記-C10 - 類

編輯:C++入門知識

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成員,它們不能有構造函數和析構函數。一般來說,編譯器無法知道被使用的是聯合的那個成員;也就是說,無法知道存儲在聯合中的對象的類型。因此,聯合也就不能包含帶構造函數或析構函數的成員,因為無法保護其中的對象以防止破壞,也不可能保證在聯合離開作用域時能調用正確的析構函數。

 


作者:houhouzhe

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved