C++析构函数:创建Dog类,成员变量int age ;string name 。大家完成类的创建 以及构造函数和析构函数的创建

创建Dog类,成员变量int age ;string name 。大家完成类的创建 以及构造函数和析构函数的创建

析构函数的作用:释放栈里面的内存(栈资源),局部的变量。堆内存,补充析构函数体,能够释放堆内存里的资源。

说明:new创造出来的对象,析构函数要使用delete关键字进行删除释放。

#include <iostream>
#include <string.h>
using namespace std;
class Dog
{
    
    
public:
    Dog(int age,string name);
    void eat();
    ~Dog();//析构函数
private:
    int age;
    string name    ;
};
Dog::Dog(int age,string name)
{
    
    
    cout<<"调用构造函数"<<endl;
    this->age=age;
    this->name=name;
    
}
void Dog::eat()
{
    
    
    cout<<age<<" is eating "<<name<<endl;
}
Dog::~Dog()                            //类外实现析构函数
{
    
    
    cout<<"调用析构函数,析构"<<name<<endl;

}
int main()
{
    
    
    Dog A(15,"zhansan");//先构造的函数后析构
    A.eat();
    Dog B(22,"lisi");
    B.eat();
    return 0;
}

输出结果:

说明: 先创建的构造函数,最后对这个进行析构。后创建的构造函数,先进行析构。创建构造函数后,结束时自动调用析构函数。

猜你喜欢

转载自blog.csdn.net/qq_45696288/article/details/125546495
今日推荐