zoukankan      html  css  js  c++  java
  • 构造函数和析构函数

    一、构造函数

    类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。构造函数的名称与类的名称是完全相同的,并且不会返回任何类型,也不会返回 void。构造函数可用于为某些成员变量设置初始值。一般不在构造函数内声明变量

    构造函数可以有参数,也可以不带参数

    不带参数

    #include <iostream>
    #include <memory>
    using namespace std;
    class  ClassA
    {
    public:
        int num;
        ClassA()
        {
            num = 110;
            ans = 119;
            cnt = 120;
        };
        ~ClassA()
        {
            cout<<"~ClassA"<<endl;
        }
        int GetNum()
        {
            return ans;
        }
    private:
        int cnt = 10;
    
    protected:
        int ans;
    };
    int main() {
        //构造函数不带参数
        ClassA pclass;
        cout << pclass.num << endl;
        cout << pclass.GetNum() << endl;
        return 0;
    }

    带参数

    #include <iostream>
    #include <memory>
    using namespace std;
    class  ClassA
    {
    public:
        int num;
        //构造函数
        ClassA(int x,int y,int z)
        {
            num = x;
            ans = y;
            cnt = z;
        };
        //析构函数
        ~ClassA()
        {
            cout << "~ClassA" << endl;
        };
        int GetNum()
        {
            return ans;
        }
    private:
        int cnt = 10;
    
    protected:
        int ans;
    };
    int main() {
        //构造函数带参数
        ClassA pclass(110, 119, 120);
        cout << pclass.num << endl;
        cout << pclass.GetNum() << endl;
        return 0;
    }

    二、析构函数

    类的析构函数是类的一种特殊的成员函数,它会在每次删除所创建的对象时执行。

    析构函数的名称与类的名称是完全相同的,只是在前面加了个波浪号(~)作为前缀,它不会返回任何值,也不能带有任何参数。析构函数有助于在跳出程序(比如关闭文件、释放内存等)前释放资源。

  • 相关阅读:
    以《淘宝网》为例,描绘质量属性的六个常见属性场景
    架构漫谈读后感
    软件体系架构课下作业01
    架构之美阅读笔记06
    架构之美阅读笔记05
    架构之美阅读笔记04
    架构之美阅读笔记03
    架构之美阅读笔记02
    架构之美阅读笔记01
    学习进度15
  • 原文地址:https://www.cnblogs.com/-citywall123/p/12696481.html
Copyright © 2011-2022 走看看