实例化时结构字段中的默认值
Default value in struct field when instance it
我刚开始学习C++。
我有这个struct
:
struct dateTime
{
int sec;
int min;
int hour;
int day;
int mon;
int year;
bool daylightSaving;
char timeZone;
};
并且我需要将 daylightSaving
默认设置为 false。
我该怎么做?也许我必须使用 class 而不是 struct
.
你可以这样写
struct dateTime
{
int sec;
int min;
int hour;
int day;
int mon;
int year;
bool daylightSaving = false;
char timeZone;
};
所以你说在 C++ 中,有一个初始化所有值的默认构造函数怎么样?
struct dateTime
{
dateTime()
: sec(0)
, min(0)
, hour(0)
, day(0)
, mon(0)
, year(0)
, daylightSaving(false)
, timeZone('a') //Are you sure you just want one character? time zones have multiple... UTC GMT ...
{}
...
}
您可以使用 class 代替,但区别仅在于默认情况下所有值都是私有的。所以你需要
class ...
{
public:
...
}
具有与结构相同的行为。
我刚开始学习C++。
我有这个struct
:
struct dateTime
{
int sec;
int min;
int hour;
int day;
int mon;
int year;
bool daylightSaving;
char timeZone;
};
并且我需要将 daylightSaving
默认设置为 false。
我该怎么做?也许我必须使用 class 而不是 struct
.
你可以这样写
struct dateTime
{
int sec;
int min;
int hour;
int day;
int mon;
int year;
bool daylightSaving = false;
char timeZone;
};
所以你说在 C++ 中,有一个初始化所有值的默认构造函数怎么样?
struct dateTime
{
dateTime()
: sec(0)
, min(0)
, hour(0)
, day(0)
, mon(0)
, year(0)
, daylightSaving(false)
, timeZone('a') //Are you sure you just want one character? time zones have multiple... UTC GMT ...
{}
...
}
您可以使用 class 代替,但区别仅在于默认情况下所有值都是私有的。所以你需要
class ...
{
public:
...
}
具有与结构相同的行为。