《面向对象程序设计C++——网易云课堂,翁恺》
将已有的对象组合成新的对象,从而实现软件重用。
当一个类包含有其他对象,需要让内置对象自行初始化。
h
class SavingAccount{
public:
SavingAccount(const char* name, const char* address, int cents);
~SavingAccount();
void print();
private:
Person m_saver;//其他类的对象
Currency m_balance;//其他类的对象
}
cpp
//内置对象分别在初始化列表中各自初始化
SavingAccount::SavingAccount(const char* name, const char* address, int cents):m_saver(name, address), m_balance(0, cents){
}
void SavingAccount::print(){
m_saver.print();//可以使用public的成员,不能访问private
m_balance.print();
}
main
int main(){
SavingAcount account;
account.m_saver.set_name("chen");//此操作不可进行(但如果m_saver是public类型的,可以进行此操作,但是不鼓励这种操作。)
}