C 深度剖析學習總結 15 類與封裝的概念

2021-10-01 22:12:09 字數 1898 閱讀 7107

【c++深度剖析學習總結】 15 類與封裝的概念

1.類的組合

電腦一般而言是由cpu,記憶體,主機板,鍵盤和硬碟等部件組合而成。

2.類的封裝

類通常分為以下兩個部分

類的實現細節

類的使用方式

當使用類時,不需要關係其實現細節

當建立類時,才需要考慮其內部實現細節

例:

普通使用者使用手機:只需要學習如何發簡訊,打**,拍照等

手機開發工程師:需要考慮手機內部的實現細節

封裝的基本概念

根據經驗:並不是類的每個屬性都是對外公開的

如:女孩子不希望外人知道自己的體重和年齡

如:男孩子不希望別知道自己的身高和收入

而一些類的屬性是對外公布的

如:人的姓名,學歷,國籍等

必須在類的表示法中定義屬性和行為的公開級別

類似檔案系統中檔案的許可權

c++中類的封裝

成員變數:c++中用於表示類屬性的變數

成員函式:c++中用於表示類行為的函式

c++中可以給成員變數和成員函式定義訪問級別

public:成員變數和成員函式可以在類的內部和外界訪問和呼叫

private:成員變數和成員函式只能在類的內部被訪問和呼叫

15-1 類成員的訪問屬性

3.類成員的作用域類成員的作用域都只在類的內部,外部無法直接訪問

成員函式可以直接訪問成員變數和呼叫成員函式

類的外部可以通過類變數訪問public成員

類成員的作用域與訪問級別沒有關係

c++中用struct定義的類中所有成員預設為public

15-2 類成員的作用域

小結類通常可以分為使用方式和內部細節兩部分

類的封裝機制使得使用方式和內部細節相分離

c++中通過定義類成員的訪問界別實現封裝機制

public成員可以在類的內部和外界訪問和呼叫

private成員只能在類的內部被訪問和呼叫

C 深度剖析教程38 類模板深度剖析

類模板可以定義任意多個不同的型別引數 類模板可以被特化 類模板的特化型別 看 include include using namespace std template typename t1,typename t2 class test template typename t1,typename t...

C 深度解析 48 類模板深度剖析

1.多引數類模板 2.程式設計實驗 include using namespace std 定義類模板 template 兩個不同引數。class test 下面類模板的特化,即引數型別為指標時的特殊情況 如何處理,下面是這種情況的類實現。因引數仍是泛型,故稱為部分特化 template class...

15 類與封裝的概念

類通常分為兩個部分 當使用類時,不需要關心其實現細節 當建立類時,才需要考慮其內部實現細節。封裝的基本概念 c 中類的封裝 public 成員變數和成員函式可以在類的內部和外界訪問和呼叫 private 成員變數和成員函式只能在類的內部被訪問和呼叫 範例 類成員的訪問屬性 include inclu...