实例化时结构字段中的默认值



我刚刚开始学习C++。

我有这个struct

struct dateTime
{
int sec;
int min;
int hour;
int day;
int mon;
int year;
bool daylightSaving;
char timeZone;
};

默认情况下,我需要将daylightSaving设置为 false。

我该怎么做?也许我必须使用类而不是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 ...
{
public:
...
}

具有与结构相同的行为。

最新更新