C++构造函数调用规则

    C++构造函数调用规则

    1)当类中没有定义任何一个构造函数时,C++编译器会提供默认无参构造函数和默认拷贝构造函数

    2)当类中定义了拷贝构造函数时,C++编译器不会提供无参数构造函数

    3)当类中定义了任意的非拷贝构造函数时,当类中提供了有参构造函数或无参构造函数,c++编译器不会提供无参构造函数

    总结:只要你写了构造函数,那么必须要用

构造析构阶段总结

   1)构造函数是C++中用于初始化对象状态的特殊函数

   2)构造函数在创建对象时,自动被调用

   3)构造函数和普通成员函数都遵循重载原则

   4)拷贝构造函数是对象正确初始化的重要保证

扫描二维码关注公众号,回复: 2976087 查看本文章

   5)必要时候必须手动编写拷贝构造函数

#include<iostream>

using namespace std;

class test

{
public:
          test()
          {

          }
          test(int a,int b)
          {
                    m_a = a;
                    m_b = b;
          }

private:
          int m_a;

          int m_b;

};

int main()
{
          test t1;             //报错,t1不存在默认构造函数,不添加test(){}

          system("pause");
}

猜你喜欢

转载自blog.csdn.net/error0_dameng/article/details/81983701