默认构造函数有什么用
What is the use of default constructor
cpp 的主要座右铭之一是避免未初始化的变量。那么编译器提供的默认构造函数有什么用,因为它不初始化变量。
隐式生成的默认构造函数调用所有成员和基类的默认构造函数。它们可能是隐式生成的,也可能不是隐式生成的(这意味着,某个成员或成员的成员等可能具有非隐式生成的默认构造函数,一个实际执行某些操作的构造函数)。
在某些情况下,需要默认构造函数。例如
MyClass arrayOfObjects[10];
在这里,即使你要为数组中的对象分配新值,也会调用默认构造函数。或者不显式调用父构造函数的派生类 ctor。甚至是变量的简单声明:
MyClass x; // calls default constructor
...
x = ..;
相关文章:
- 是什么让放置新调用对象的构造函数?
- 如果我真的真的想从 STL 容器继承,并且我继承构造函数并删除新运算符,会发生什么?
- 使用基类指针调用基类的值构造函数的语法是什么?
- 这个C++编译器优化(在自身的实例上调用对象自己的构造函数)的名称是什么,它是如何工作的?
- 构造函数后面的宏.什么意思?
- C++构造函数内部会发生什么?
- 用相同的参数声明两个构造函数的最偶像化的方法是什么?
- 如果在 C++ 构造函数中以错误的顺序初始化对象数据,会发生什么类型的错误
- 我是否为邪恶刽子手的构造函数错过了什么?
- 构造函数中没有参数的对象类成员按什么顺序初始化?
- 什么时候用指针调用C++类构造函数
- 这个构造函数是做什么的
- 将复制构造函数设置为private和=delete有什么区别
- 我不明白在这个例子中什么时候调用构造函数
- 在C++中,从构造函数中将字符串文本分配给成员const char*变量时会发生什么
- c++ 17 中结构自动定义构造函数的规则是什么?
- 在C++中初始化带有和不使用构造函数调用的对象有什么区别
- 指示汇编时间叫什么构造函数
- 在这种情况下调用什么构造函数
- 使用什么构造函数