【发布时间】:2021-12-07 23:26:46
【问题描述】:
在非参数化构造函数中初始化类的数据成员有什么好处吗?就像,如果它不带参数,在非参数化构造函数中初始化类数据成员不像直接在类中初始化值? 示例:
class persons {
private:
int age, id;
public:
persons(){
age = 2;
id = 3;
}
};
--> 我们也可以这样做:
class persons {
private:
int age = 2, id = 3;
};
那么,默认构造函数的作用是什么?
【问题讨论】:
-
您的意思并不完全清楚,可能是由于术语(定义->初始化?)。请提供示例代码。
-
还是不清楚你的意思。您不能在其构造函数中声明类成员变量,这些变量必须声明为类的一部分。您在构造函数中声明的任何变量都是构造函数主体的局部变量。也许一个代码示例可以通过在构造函数中声明成员来阐明您的意思?
-
“在非参数化构造函数中声明类数据成员”将声明局部变量。您是说初始化吗?
-
对不起,但编辑并没有澄清太多(声明也不是正确的词)。请显示一些代码,而不是用英文描述代码
-
"非参数化构造函数" == 默认构造函数
标签: c++ class constructor