1. 程式人生 > >子物件基礎概念及其用法

子物件基礎概念及其用法

一、什麼是子物件

一個類的成員是某一個物件的類時,該物件就是子物件,駐留在另一個物件中的物件,在一個類的定義中,宣告另一個類的物件來作為成員變數。

二、子物件的作用是什麼

減少程式碼重用

當一個類中出現了另一個類的物件成員時,該類的建構函式就要包含子物件的初始化(成員初始化列表放在建構函式的右邊),並用冒號進行分隔。成員初始化列表是由一個或多個選項組成的,多各選項之間用逗號分隔

三、利用子物件實現年月日(月日類是年類的子物件)

程式碼塊:

#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;

}

執行結果:

四、小結:

子物件和放映了出兩個類的包含關係,又稱為組合關係

這是將複雜問題分解為若干個簡單問題所採用的一種方法