【发布时间】:2021-03-22 16:00:27
【问题描述】:
我没有完全理解构造函数的使用 例如:
class car
{
public:
string name;
long int price;
int mileage
bool ownedByPlayer;
};
这里,我为什么要使用这样的构造函数,
class car
{
public:
string name;
long int price;
int mileage
bool ownedByPlayer;
car()
{
ownedByPlayer = false;
}
};
如果我可以简单地定义变量ownedByPlayer 我已经声明它。喜欢:bool ownedByPlayer = false;?
【问题讨论】:
-
对于无参数构造函数没有太大区别,但您可以编写带参数的构造函数。例如,您可以编写一个构造函数
car(string name, long price, int mileage, bool owned),将成员变量的值设置为传递给构造函数的值。 -
无用的构造函数有什么用? ...有时构造函数实际上需要做一些事情来构造一个对象
-
C++ 不允许你在 C++11 之前的类中执行
bool ownedByPlayer = false;。 -
这能回答你的问题吗? Why we do need constructors?, Use of constructor in C++.
-
您是在问为什么这个类必须始终有一个构造函数,还是在问您是否需要自己编写该构造函数,或者编译器生成的默认构造函数是否足够好?
标签: c++ class constructor