H01 C 物件導向高階程式設計下作業解析

2021-08-10 17:15:21 字數 849 閱讀 6153

1)編制標頭檔案如下

#ifndef fruitw4_h_

#define fruitw4_h_

class fruit

void print()

virtual void process()

private:

int no;

double weight;

char key;

}; virtual void process()

private:

int size;

char type;

};#endif

2) 主程式測試

#include using namespace std;

int _tmain(int argc, _tchar* argv)

/*輸出結果:

32 40

*/

3)**解析

b、查詢相關資料後可知,一方面在基類和派生類中都存在虛函式(vptr),指向對應的虛表(vtbl),那麼記憶體就會包括其指標;另一方面,記憶體的體系結構是對齊的,有一定的對齊規則。(網上參考資料記憶體對齊規則)

c、根據對齊規則繪製物件模型圖如下:

物件導向高階程式設計

相同class的各物件互為友元 class complex int func const complex param private double re,im string inline string string const char cstr 0 else inline string strin...

C 物件導向高階程式設計 筆記

最近重新複習了一下c 物件導向高階程式設計中知識點,學而時習之,不亦說乎。拷貝建構函式,拷貝的是同型別的物件 賦值建構函式 檢測自我賦值 為什麼?有什麼作用?if this str return this 組合繼承 委託示例 委託 繼承 composite pimpl 編譯防火牆 左邊永遠不用編譯,...

C 物件導向(高階)

1.構造 委託 乙個建構函式可以呼叫另外的建構函式 class aa int i a i,0 a int i,int j 注 避免遞迴呼叫 例 class aa int i a i,0 a int i,int j a 2.不可變物件和類 immutable object and class 不可變物...