我正在尝试调用构造函数来调用checkDate函数,但无效:( ..我真的很陌生。
class Date
{
public:
Date();
Date(int, int, int);
private:
void checkDate(void);
int month, day, year;
};
Date:: Date() // default constructor
{
month = 1;
day = 1;
year = 1960;
}
Date:: Date(int m, int d, int y) // constructor definition
{
m = month, d = day, y = year;
checkDate();
}
void Date:: checkDate() // function to check date
{
if (month < 1 || month > 12)
exit(0);
else if (day < 1 || day > 31)
exit(0);
else if (year < 1960 || year > 2013)
exit(0);
else
cout << "Works." << endl;
}
int main()
{
Date();
Date(1, 1, 1960); //make this work PLEASEEEEEE <333333333333333333333
}
这是我到目前为止所拥有的。 我是这个网站的新手,不确定我是否正确发布。
答案 0 :(得分:2)
你的date(int,int,int)构造函数错误地分配了变量。你想要的是月= m; day = d;年= y;
答案 1 :(得分:1)
更改
Date:: Date(int m, int d, int y) // constructor definition
{
m = month, d = day, y = year;
checkDate();
}
要
Date:: Date(int m, int d, int y) // constructor definition
{
month = m, day = d, year = y ;
checkDate();
}
我实际上会改变aaaalot,但这是我能给你的最简单的答案,工作,工作,工作。