有以下程序 #include <iostream> using namespace std; static int days []={31,28.31,30,31,30,31,31,30,31,30,31};

admin2010-12-16  34

问题 有以下程序        #include <iostream>        using  namespace  std;        static int days []={31,28.31,30,31,30,31,31,30,31,30,31};        class  date        {        private:            int month,  day,  year:        public:           date (int m, int d, int  y           {               month  =  m;               day = d;               year = y;            }            date{}            {}            void disp {)            {            cout <<year<<" - "<<month<< "- "<<day<<end1;            }            date  operator+(int  day)            {              date dt = *this:              day += dt.day;              while  { day >  days[ dt.month - 1 ] )              {                  day -= tays[ dt.month - 1 ];                  if  ( ++dt.month == 13                  {                     dt.month = 1;                     dt.yeare++;                  }               }              dr. day = day;              return dt;           }        };        int main()        {           date d1( 6, 20, 2004 ),  d2;           d2.= d1 + 20;           d2.disp ();           return  0;         }   执行后的输出结果是

选项 A、2004-7-10
B、2004-6-20
C、2004-7-20
D、程序编译时出错

答案A

解析 本题考核运算符的重载。本题通过将“+”运算符重载为类date的成员函数实现简单的对象加法。
转载请注明原文地址:https://jikaoti.com/ti/usW0FFFM
0

最新回复(0)