C++類中的成員可以是另一個類的對象,我們成該成員為對象成員
class A
{};
class B
{
A a;
};
//B類中有對象A作為成員,A是對象成員
- 當其他類對象作為本類成員,構造時候先構造類對象,再構造自身
- 析構的順序與構造相反
#include <iostream>
using namespace std;
#include <string>
//類對象作為類成員
//手機類
class Phone
{
public:
Phone(string pname)
{
m_pname=pname;
cout << "Phone 的構造函數" << endl;
}
string m_pname;
};
class Person
{
public:
//Phone m_phone = pname; 隱式轉換法
Person(string name,string pname):m_name(name),m_phone(pname)
{
cout << "Person 的構造函數" << endl;
}
//姓名
string m_name;
//手機
Phone m_phone;
};
void test()
{
Person p("張三","蘋果");
cout << p.m_name << "拿着" << p.m_phone.m_pname << endl;
}
int main()
{
test();
system("pause");
return 0;
}