#include <iostream>
#include<string>
using namespace std;
class phone
{
public:
phone(string name)
{
cout << "phone构造函数的应用" << endl;
p_name = name;
}
~phone()
{
cout << "phone的析构函数的调用" << endl;
}
string p_name;
};
class person {
public:
person(string names, string phonem) :name(names), m_phone(phonem)
{
cout<<"person构造函数的应用"<<endl;
}
~person()
{
cout << "person析构函数的调用" << endl;
}
string name;
phone m_phone;
};
void test01()
{
person p("张三", "HUAWEI");
cout << p.name << "出门带着" << p.m_phone.p_name << "手机十分耀眼" << endl;
}
int main() {
test01();
system("pause");
return 0;
}
这里我们根据结果可以发现:当其他类对象作为本类成员,构造时先构造其他类对象,再构造自身,析构相反