我正在尝试学习如何初始化列表。
我在下面有一个简单的类并试图初始化变量列表。第一个 Month(int m): month(m)
有效。我正在尝试使用多个变量在该行下方做类似的事情。这种格式可能吗?我是否必须摆脱单类机?
class Month
{
public:
Month(int m) : month(m) {} //this works
Month(char first, char second, char third) : first(first){} : second(second){} : third(third){} //DOES NOT WORK
Month();
void outputMonthNumber(); //void function that takes no parameters
void outputMonthLetters(); //void function that takes no parameters
private:
int month;
char first;
char second;
char third;
};
显然我不知道如何做到这一点,任何指导将不胜感激,谢谢
最佳答案
试试这个:
Month(char first, char second, char third)
: first(first), second(second), third(third) {}
[您可以单行执行此操作。我将其拆分只是为了演示。]
空括号 {} 是构造函数的单体,在本例中是空的。
关于多个变量的 C++ 初始化列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7603981/