有如下程序: #include using namespace std; class clock { public: clock():seeonds(0){}; clock& operator++() { this一>seconds++; return *

admin2019-08-23  30

问题 有如下程序:
#include
using namespace std;
class clock
{
public:
clock():seeonds(0){};
clock& operator++()

this一>seconds++;
return *this;
}
void display()
{
cout<seconds<<’’:
}
private:
int seconds;
};
int main()
{
clock c;
++c:
c.display();
(++(++c)).display();
c.display();
return 0;
}   
运行后的输出结果是(    )。

选项 A、1 3 2
B、l 3 3
C、1 2 3
D、1 2 2

答案B

解析 main()函数中首先定义clock类对象c,使用默认构造函数,初始化c的成员seconds为0;然后调用重载的增量运算符函数,将c的成员seconds自增1,此时c.secorlds的值为1;再调用display()函数输出c.seconds,结果为1;接下来连续两次调用增量运算符函数,将c.seconds增加2,此时c.seconds的值为3,再调用display()函数输出3,最后再次调用display()函数输出3,综上运行结果为:1 3 3;本题答案为B。
转载请注明原文地址:https://jikaoti.com/ti/WiA0FFFM
0

最新回复(0)