我刚刚开始使用运算符重载并试图理解这个概念。所以我想重载运算符+。在我的头文件中,我有
public:
upDate();
upDate(int M, int D, int Y);
void setDate(int M, int D, int Y);
int getMonth();
int getDay();
int getYear();
int getDateCount();
string getMonthName();
upDate operator+(const upDate& rhs)const;
private:
int month;
int year;
int day;
所以基本上我主要从 upDate 创建了一个对象,我想将它添加到一个 int 中。
upDate D1(10,10,2010);//CONSTRUCTOR
upDate D2(D1);//copy constructor
upDate D3 = D2 + 5;//add 5 days to D2
我将如何编写超载,以便将 D2 增加 5 天?我有这个,但我很确定语法不正确并且仍然出现错误。任何帮助,将不胜感激
upDate upDate::operator+(const upDate& rhs)const
{
upDate temp;
temp.day = this->day+ rhs.day;
return temp;
}