单选题 下面程序中对一维坐标点类Point进行运算符重载 #include using namespace std; class Point{ public: Point(int val){x=val;} Point&operator++(){x++;return*this} Point operator 4++(int){Point old=*this;++(*this);return old;} int GetX()const{return x;) private: int X; ); int main() { Point a(10); cout<<(++a).GetX(); cout<
【正确答案】 B
【答案解析】本题考查++运算符的重载及运算符的优先级两个知识点,由于创建对象a(10)含参数,所以执行第三个重载构造函数Point Operator ++(int)。另外,在执行(++a).GetX()是先将对象a进行重载,++a运算,然后访问成员函数GetX(),所以X=11,执行a++.GetX()也是将对象a进行重载,a++运算,再访问成成函数GetX(),所以x=11。