其他分享
首页 > 其他分享> > 类和对象-对象特性-构造函数和析构函数

类和对象-对象特性-构造函数和析构函数

作者:互联网

 

点击查看代码
#include<iostream>
#include<string>

using namespace std;

//对象的初始化和清理
class Person
{
public:
	//1、构造函数
	//没有返回值 也不用写void
	//函数名与类名相同
	//构造函数可以有参数,可以发生重载
	//创建对象的时候,构造函数会 自动调用,而且只调用一次
	Person()
	{
		cout << "Person 构造函数的调用" << endl;
	}

	//2、析构函数 进行清理操作
	//没有返回值不写void
	//函数名和类名相同在名称 前加~
	//析构函数 不可以有参数的,不可以发生重载
	//对象在销毁前会 自动调用析构函数,而且只会调用一次
	~Person()
	{
		cout << "Person 析构函数的调用" << endl;
	}
};

//构造和析构都是必须有的实现,如果我们自己不提供,编译器会提供一个空实现的构造和析构
void test01()
{
	Person p1; //局部变量,在栈上的数据,test01()执行完毕后,释放这个对象
}

int main(){

	test01();

	system("pause");

	return 0;
}

 

点击查看代码
#include<iostream>
#include<string>

using namespace std;

//对象的初始化和清理
class Person
{
public:
	//1、构造函数
	//没有返回值 也不用写void
	//函数名与类名相同
	//构造函数可以有参数,可以发生重载
	//创建对象的时候,构造函数会 自动调用,而且只调用一次
	Person()
	{
		cout << "Person 构造函数的调用" << endl;
	}

	//2、析构函数 进行清理操作
	//没有返回值不写void
	//函数名和类名相同在名称 前加~
	//析构函数 不可以有参数的,不可以发生重载
	//对象在销毁前会 自动调用析构函数,而且只会调用一次
	~Person()
	{
		cout << "Person 析构函数的调用" << endl;
	}
};

//构造和析构都是必须有的实现,如果我们自己不提供,编译器会提供一个空实现的构造和析构
void test01()
{
	Person p1; //局部变量,在栈上的数据,test01()执行完毕后,释放这个对象
}

int main(){

	//test01();
	Person p2;

	system("pause");

	return 0;
}

 

标签:和析构,函数,对象,Person,调用,include,构造函数
来源: https://www.cnblogs.com/yeqian/p/15033439.html