C++类对象作为类成员

//当其他类的对象作为本类的成员 构造的时候先去构造类的对象 再去构造自身
//析构函数: 先进后出
先去构造Phone 再去构造Person Person先退出 Phone后退出
//析构与构造顺序相反

点击查看代码
#include<iostream>
using namespace std;
//类对象作为类成员
class Phone
{
public:
	Phone(string PhoneName)
	{
		m_Phone = PhoneName;
		cout << "Phone的构造函数" << endl;
	}
	~Phone()
	{
		cout << "Phone 的析构函数" << endl;
	}
	string m_Phone;
};

class Person
{
public:
	/*Person(string name, Phone phonename) :m_Name(name), m_PhoneName(phonename)
	{
		cout << "Person的初始化列表" << endl;
	}*/
	Person(string name, string phonename) :m_Name(name), m_PhoneName(phonename)//Phone m_PhoneName=phonename;
	{
		cout << "Person的初始化列表" << endl;
	}
	~Person()
	{
		cout << "Person 的析构函数" << endl;
	}
	string m_Name;
	Phone m_PhoneName;
};
//void test01()
//{
//	Phone phone("Vivo");
//	Person p1("zfx",phone );
//	cout << p1.m_Name << "拿着" << p1.m_PhoneName.m_Phone << endl;
//}

void test02()
{
	Person p1("zfx", "Vivo");
	cout << p1.m_Name << "+" << p1.m_PhoneName.m_Phone << endl;

}
int main()
{
	//test01();
	test02();
	system("pause");
	return 0;
}

posted @   MegaDataFlowers  阅读(55)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示