美文网首页
C++之构造函数基础篇

C++之构造函数基础篇

作者: 二进制人类 | 来源:发表于2022-10-22 10:10 被阅读0次

    构造函数的概述

    构造函数:编译器自动调用,如果用户不提供构造函数,编译器会提供一个空的无参构造函数。

    类实例化对象的时候,先为对象开辟空间,在自动调用构造函数 完成初始化。

    构造函数定义形式

    1. 构造函数必须是public

    2. 构造函数的函数名必须和类名称相同, 不能有返回值类型(连void都不可以),可以有形参(构造函数可以重载)。

    class Data
    {
    public:
     Data()
     {
     cout<<"无参构造"<<endl;
     }
    };
    
    int main(int argc, char *argv[])
    {
     //实例化对象 自动调用 无参构造
     Data ob1;
     return 0;
    }
    

    构造函数分类

    无参构造

    有参构造

    拷贝构造

    构造函数调用形式

    #include <iostream>
    
    using namespace std;
    class Data
    {
    private:
     int m_A;
    public:
     Data()
     {
     cout<<"无参构造"<<endl;
     }
     Data(int a)
     {
     m_A = a;
     cout<<"有参构造m_A="<<m_A<<endl;
     }
    };
    
    int main(int argc, char *argv[])
    {
     //1、隐式调用无参构造(推荐)
     Data ob1;
     //2、显示 调用无参构造
     Data ob2=Data();
    
     //3、隐式调用有参构造(推荐)
     Data ob3(10);
     //4、显示调用有参构造
     Data ob4=Data(20);
    
     //5、匿名对象 当前语句结束 匿名对象将被释放
     Data();//无参的匿名对象
     Data(30);//有参的匿名对象
    
     //6、以下代码不是实例化对象 而是函数声明
     //该函数名为ob5 无参 返回值类型为Data
     Data ob5();
    
     return 0;
    }
    

    相关文章

      网友评论

          本文标题:C++之构造函数基础篇

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