C 類 物件資料整理

2021-08-26 20:19:14 字數 1273 閱讀 3836

定義乙個類,本質上是定義乙個資料型別的藍圖。這實際上並沒有定義任何資料,但它定義了類的名稱意味著什麼,也就是說,它定義了類的物件包括了什麼,以及可以在這個物件上執行哪些操作。

類有兩個特性:

乙個是繼承,乙個是封裝。

類定義是以關鍵字class開頭,後跟類的名稱。類的主體是包含在一對花括號中。類定義後必須跟著乙個分號或乙個宣告列表。例如,我們使用關鍵字class定義 box 資料型別,如下所示:

class box

;

關鍵字public確定了類成員的訪問屬性。在類物件作用域內,公共成員在類的外部是可訪問的。您也可以指定類的成員為privateprotected,這個我們稍後會進行講解。

友元函式有權訪問類的所有私有(private)成員和保護(protected)成員。儘管友元函式的原型有在類的定義中出現過,但是友元函式並不是成員函式。

如果要宣告函式為乙個類的友元,需要在類定義中該函式原型前使用關鍵字friend,如下所示:

class box

;

宣告類 classtwo 的所有成員函式作為類 classone 的友元,需要在類 classone 的定義中放置如下宣告:

friend class classtwo;
#include using namespace std;

class box

;// 成員函式定義

void box::setwidth( double wid )

// 請注意:printwidth() 不是任何類的成員函式

void printwidth( box box )

void setheight(int h)

protected:

int width;

int height;};

// 派生類

class rectangle: public shape};

int main(void)

返回結果是35 ,可以自行編譯下。這裡的rectangle就是派生類,shape就是基類。派生類可以直接使用基類的東西(除了priviate之外的)。派生類可以訪問基類中所有的非私有成員。因此基類成員如果不想被派生類的成員函式訪問,則應在基類中宣告為 private。

C 類與物件整理

類和物件 1.struct與class唯一區別 在於預設訪問許可權不同 struct為public,class為private 2.構造與析構函式 初始化和清理 建構函式 類名 函式可以有引數,可以發生過載 析構函式 類名 不可以發生過載,析構 將堆區開闢資料做釋放操作。3.類名加 建立乙個匿名物件...

C 知識整理 類與物件的概念

1 類外定義成員函式 2 內建成員函式 3 成員函式的儲存方式 c 並不是一種純粹的物件導向的語言,而是一種基於過程和物件導向的混合型語言。c 物件導向的機制就是為了解決編寫大程式時遇到的困難。物件導向的程式設計有4個主要的特點 抽象 封裝 繼承和多型性。c 的類物件體現了抽象和封裝的特徵,在此基礎...

資料整理 物件導向

物件導向 1.物件導向其實就是思考問題的一種方式 物件導向不是替代面向過程的,是基於面向過程的 由執行者變為指揮者 好處 便於維護和修改 2.物件 具體存在的個體 看得見摸得著,真實存在的 3.類 定義類的方法 class 類名 類其實就是一種資料型別,只不過這個資料型別不是微軟設定的 具有相同屬性...