我是C ++的新手,并尝试编写一个“Date Class”程序,对日期进行一些计算。
这两个错误在我看来:
错误C2512:'日期':没有合适的默认构造函数
IntelliSense:“Date”类没有默认构造函数
在我从类声明一个对象的行中:
int _tmain(int argc, _TCHAR* argv[])
{
Date d;
}
.h
文件中的构造函数:
public:
Date(int, int, int);
实施:
Date::Date(int d= 0, int m= 0, int y= 0)// DEFAULT CONSTRUCTOR
{
d = m = y = 0;
}
请帮助我,为什么会出现此错误?
答案 0 :(得分:1)
这样做:
.h文件中的构造函数:
public:
Date(int=0, int=0, int=0);
实施:
Date::Date(int d, int m, int y)// DEFAULT CONSTRUCTOR
{
// Initialize data of this class
}
方法的原型/声明应该提到默认参数,而不是实现。
答案 1 :(得分:0)
你可能还需要添加这样的构造函数:
public:
Date();
Date(int, int, int);
Date::Date()// DEFAULT CONSTRUCTOR
{
d = m = y = 0;
}