// C9_5.cpp : Defines the entry point for the console application. // 建立子類別 #include "stdafx.h" #include #include //利用 strlen() 和 strcpy() using namespace std; class CaseBox { public: double m_L; double m_W; double m_H; // 預設建構子 CaseBox(double lv = 1.0, double bv = 1.0, double hv = 1.0): m_L(lv), m_W(bv), m_H(hv){} }; class CaseBoxAA: CaseBox // 子類別 { public: char* m_TiTle; CaseBoxAA(char* str = "魔宮寶盒") // 建構子 { m_TiTle = new char[ strlen(str) + 1 ]; strcpy(m_TiTle, str); } ~CaseBoxAA() // 解構子 { delete[] m_TiTle; }; }; int main(int argc, char* argv[]) { CaseBox TryCase(9.8, 7.2, 3.4); // 建立物件 CaseBoxAA Box1; CaseBoxAA Box2("Special"); cout << endl << "TryCase 佔用 " << sizeof TryCase // 顯示記憶體佔用狀況 << " 位元組" << endl << "Box1 佔用 " << sizeof Box1 << " 位元組" << endl << "Box1.m_TiTle = " << Box1.m_TiTle << endl << "Box2 佔用 " << sizeof Box2 << " 位元組" << endl << "Box2 標題 = " << Box2.m_TiTle << endl; cout << "TryCase 長度 : " << TryCase.m_L; TryCase.m_L = 10.0; cout << endl; return 0; }