第7章 類
const成員函式
7.1.4 建構函式
預設建構函式,可以使用=default進行定義。和其他函式一樣,如果=default在類的內部,則預設建構函式是內聯的;如果它在類的外部,則該成員預設情況下不是內聯的;
7.2 訪問控制與封裝
class與struct的唯一區別為class的預設訪問許可權為private,而struct的預設訪問許可權為public;
友元可以允許其他類或函式訪問該類的非公有成員,方法是令其他類或函式成為它的友元(friend);友元宣告只能出現在類定義的內部,友元不是類的成員也不受它所在區域訪問控制級別的約束;
7.3 類的其他特性
定義在類內部的成員函式是自動inline的,可以在類的內部把inline作為宣告的一部分顯式地宣告成員函式,同樣也可以在類的外部;
可以通過在變數的宣告中加入mutable關鍵字使得某個資料成員在乙個const成員函式內可以被修改;
類資料成員的初始值,類內初始值必須使用=的初始化形式或者花括號的直接初始化形式。
類之間的友元關係,如果類a需要訪問類b中的私有成員,則須在類b中指定類a為它的友元。
class
b;
令成員函式作為友元,即可以指定a類中的成員函式為友元,每個類負責控制自己的友元類或友元函式,友元關係不存在傳遞性。
7.5 建構函式再探
class a;
a():a(agr1,agr2,...
){};
}
class
bar
-----
c 基礎 關於類
類實際上是建立物件的模板,每個物件都包含資料,並提供了處理和訪問資料的方法。類定義了每個物件可以包含什麼資料和功能,但類自己不能包含資料。比如乙個類代表乙個人,它就可以定義所以人相關的資訊 身高 年齡 體重等 使用時,事例化物件表示某乙個人。類的成員 可以分為兩大類類本身所宣告的以及從基類中繼承而來...
C 基礎 關於類
類實際上是建立物件的模板,每個物件都包含資料,並提供了處理和訪問資料的方法。類定義了每個物件可以包含什麼資料和功能,但類自己不能包含資料。比如乙個類代表乙個人,它就可以定義所以人相關的資訊 身高 年齡 體重等 使用時,事例化物件表示某乙個人。類的成員 可以分為兩大類類本身所宣告的以及從基類中繼承而來...
C 基礎 關於類 C 教程
類實際上是建立物件的模板,每個物件都包含資料,並提供了處理和訪問資料的方法。類定義了每個物件可以包含什麼資料和功能,但類自己不能包含資料。比如乙個類代表乙個人,它就可以定義所以人相關的資訊 身高 年齡 體重等 使用時,事例化物件表示某乙個人。類的成員 可以分為兩大類類本身所宣告的以及從基類中繼承而來...