美文网首页
6.构造和析构函数

6.构造和析构函数

作者: lxr_ | 来源:发表于2021-01-29 19:56 被阅读0次
    #include<iostream>
    using namespace std;
    
    //构造和析构函数会被编译器自动调用,完成对象初始化和清理工作
    //***对象的初始化和清理工作是编译器强制要求我们做的事情,如果我们不提供构造和析构函数,编译器会提供空实现的构造和析构函数
    
    class Person
    {
    public:
        //1.构造函数
        //没有返回值,不用写void
        //函数名与类名相同
        //构造函数可以有参数,也可以发生重载
        //创建对象的时候,构造函数会自动调用,而且只调用一次
        Person()
        {
            cout << "Person构造函数的调用" << endl;
        }
    
        //2.析构函数:
        //没有返回值,不用写void
        //函数名和类名相同,在名称前加~
        //析构函数不可以有参数,不能发生重载
        //对象在销毁前,会自动调用析构函数,而且只会调用一次
        ~Person()
        {
            cout << "Person析构函数的调用" << endl;
        }
    };
    void test01()
    {
        Person p;//在栈上的数据,test01执行完毕后,释放这个对象
    }
    int main()
    {
        //Person p;//执行完瞬间会析构
        test01();
        system("pause");
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:6.构造和析构函数

          本文链接:https://www.haomeiwen.com/subject/sddctltx.html