单选题 有如下类定义: class MyClass { public: MyClass(double d=0.0):val(d) { } ______________ //后缀自增运算符++的声明 private: double val; };若要使语句序列 MyClass x(2.1),y; y=x++;能够正常运行,横线处的语句应为
【正确答案】 C
【答案解析】解析:横线处填写的语句,是重载后缀自增运算符++的函数声明,为了与内置类型一致,后缀自增运算符应该返回旧值,即尚未自增的值,并且应该作为值返回,而不是返回引用,选项A、B错误;另外为了区分运算符的前缀和后缀形式,后缀运算符重载函数需要接受一个额外的int型形参,选项D错误;答案为C。