#include<bits/stdc++.h> using namespace std; //对象的初始化和清理 //1、构造函数,进行初始化操作 class Person{ //1.1 构造函数 //没有返回值 不用写void //函数名 和类名相同 //构造函数可以有参数,可以发生重载 //创建对象的时候,构造函数会自动调用,而且只调用一次 public : Person() { cout<<"Person构造函数的调用"<<endl; } ~Person(){ cout<<"Person的析构函数调用"<<endl;//在栈上的数据,调用完后释放这个对象 } //构造和析构都是必须有的实现,如果我们自己不提供,编译器会提供一个空实现的构造和析构 }; void test01() { Person p; } //2、析构函数,进行清理操作 //析构函数语法: ~类名(){} //析构函数,没有返回值也不写void //函数名称与类名相同,在名称前加上符号 ~ //析构函数不可以有参数,因此不可以发生重载 //程序在对象销毁前会自动调用析构,无须手动调用,而且只会调用一次 int main() { Person p; test01(); system("pause") ; return 0; }