你必须有一个默认的构造函数?

时间:2014-10-27 17:15:38

标签: c++ class oop

说我上课了。我希望它有一个带有某些参数的构造函数,所以我创建一个。即使我不需要,我还需要一个没有参数的构造函数(默认构造函数)吗?换句话说,即使我不需要,我还有包含Class()作为会员功能吗?

5 个答案:

答案 0 :(得分:7)

没有。做一个能够满足你所需要的课程,而不是一个无缘无故地坚持货物崇拜的课程。如果有疑问,橡皮鸭就会上课。

答案 1 :(得分:6)

不,如果你不需要,那么你就不需要了。

如果您希望能够默认初始化类,则只需要它。通常你不想要它 - 如果用你编写的构造函数正确初始化了对象,你只希望它们存在 - 这就是为什么声明你自己的构造函数会删除隐式的默认构造函数。

答案 2 :(得分:1)

除非您使用某些希望您拥有默认构造函数的第三方库,否则不会。

答案 3 :(得分:1)

构造函数决定如何实例化您的类。所以,你可以设计构造函数。有时您希望该类的用户只通过为该类指定默认构造函数来指定数据成员的值(而不是具有某些默认值)来创建对象。

答案 4 :(得分:-4)

是的,你需要一个默认的构造函数。该程序不会编译。

相关问题