#include <iostream>
using namespace std;
#include <string.h>
#include "point.h"
//构造函数是创建类的时候会执行一边的函数,而析构函数则是在结束类的时候执行的函数
class person {
public:
person()
{
//这个是无参数的构造函数
age = 10;
cout << "这是无参数的构造函数" << endl;
}
~person()
{
//这个是无参数的析构函数
cout << "这是析构函数" << endl;
}
person(int x)
{
age = x;
cout << x << endl;//这是有参的构造函数
cout << " 这是有参的构造函数" << endl;
}
person(const person& p)
{
//有参数的构造函数
cout << "这是有拷贝的构造函数" << endl;
age = p.age;
}
private:
int age;
};
int main()
{
person(10);//这里就直接销毁了,然后执行了析构函数
person p1;//会自动调用,然后也会销毁,相当于这里他不会马上销毁了,
person p2(10);//为什么这里会调用无参数的析构函数
//如何调用
//但是如果调用匿名函数则会立即销毁,而不是走到main函数的底部
}