子物件基礎概念及其用法
阿新 • • 發佈:2018-12-12
一、什麼是子物件
當一個類的成員是某一個物件的類時,該物件就是子物件,駐留在另一個物件中的物件,在一個類的定義中,宣告另一個類的物件來作為成員變數。
二、子物件的作用是什麼
減少程式碼重用
當一個類中出現了另一個類的物件成員時,該類的建構函式就要包含子物件的初始化(成員初始化列表放在建構函式的右邊),並用冒號進行分隔。成員初始化列表是由一個或多個選項組成的,多各選項之間用逗號分隔
三、利用子物件實現年月日(月日類是年類的子物件)
程式碼塊:
#include<iostream> using namespace std; class Date//定義一個日期類 { public: Date(int m,int d)//建構函式 { month=m; day=d; } void Print();//列印函式 private: int month,day;//月份和日期為私有成員 } ; class Year//定義一個年類 { public: Year(int y,int m,int d):year(y),date(m,d){};//建構函式,子物件 void Print();//列印函式 private: Date date;//定義Date類的一個物件date int year;//定義私有成員year }; void Date::Print() { cout<<month<<"月"<<day<<"日"<<endl; } void Year::Print() { cout<<year<<"年"; date.Print();//這個列印函式呼叫Date類的列印函式 } int main() { Year h(2016,6,16);//定義year類的一個物件h 並初始化為 2016 6 16 h.Print();//列印 return 0; }
執行結果:
四、小結:
子物件和放映了出兩個類的包含關係,又稱為組合關係
這是將複雜問題分解為若干個簡單問題所採用的一種方法