问题
填空题
下面是复数类complex的定义,其中重载的运算符“+”的功能是返回一个新的复数对象,其实部等于两个操作对象实部之和,其虚部等于两个操作对象虚部之和;请 补充完整: class complex { double real; //实部 double imag; //虚部 public: complex(doubler,double i):real(r),imag(i){} complex operator+(complex a) {return complex( 【14】 ); } };
答案
参考答案:real,imag+a.imag (注:加数和被加数可以交换位置)
解析: 在C++语言中,可以通过类名来创建一个临时对象,其一般形式如下: <类名>(<构造参数列表>) 该临时对象只在当前语句内有效。在本题的+运算符重载函数中,需要返回一个“其实部等于两个操作对象实部之和,其虚部等于两个操作对象虚部之和”的complex类对象,因此在括号内只需填入real+a.real,imag+a.imag就可以返回一个这样的对象。故正确答案是:real+a.real,imag+a.imag(其中加数与被加数可以互换)。