首页 > 试题广场 >

找出A部分中Date::add_year()里的一个错误。在

[问答题]
找出A部分中Date::add_year()里的一个错误。在B部分里找出另外两个错误。
A
inline void Date::add_year(int n)
{
  y += n;
}

B
Date& Date::add_year(int n)
{
  if (d==29 && m ==2 && !leapyear(y+n)) { // 当心2月29日
    d = 1;
    m = 3;
  }
  y += n;
  return *this;
}

这道题你会答吗?花几分钟告诉大家答案吧!