错误:声明与“void DateType :: setBirthYear(& birthYear)”
不兼容与月和日相同的错误。
没有编译错误,没有运行时错误,但是方法永远不会被正确调用并且不会产生toString输出。 Visual Studio一直说cpp定义与h声明不兼容,尽管它们完全相同。我在同一个项目中有另一个类,它遵循相同的格式,虽然设置不同的变量有不同的方法,并且没有任何错误,并且它的toString工作正常。
标题文件:
#ifndef DATETYPE_H
#define DATETYPE_H
using namespace std;
#include <string>
class DateType
{
public:
DateType(void);
~DateType(void);
void setBirthMonth(string& birthMonth);
void setBirthDay(string& birthDay);
void setBirthYear(string& birthyear);
string toString();
private:
string month;
string day;
string year;
};
#endif
cpp文件:
#include "DateType.h"
#include <iostream>
using namespace std;
DateType::DateType(void)
{
}
DateType::~DateType(void)
{
}
void DateType::setBirthMonth(string& birthMonth){
month=birthMonth;
cout<<month;
}
void DateType::setBirthDay(string& birthDay){
day=birthDay;
cout<<day;
}
void DateType::setBirthYear(string& birthYear){
year=birthYear;
cout<<year;
toString();
}
string DateType::toString(){
cout<<month+" "+day+ " "+year;
return (month+" "+day+ " "+year);
}