请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚

admin2016-08-19  63

问题 请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚部等于两个复数的虚部之和。例女口,(23+34i)+(56+35i)等于(79+69i)。
    要求:
    补充编制的内容写在“//********333********”与“//********666********”之间,不得修改程序的其他部分。
    注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
1    //Minicomplex.h
2  #include
3  using namespace std;
4  class MiniComplex//复数类
5    {
6   public:
7    //重载流插入和提取运算符
8    friend  ostream&  operator  <<
9  ( ostream& osObj ect,const  MiniComplex&complex)
10    {
11    osObject<<"("<12    return osObj ect;
13    }
14    friend istream&operator>>(istream& isObject,MiniComplex&complex)
15    {
16    char ch;
17    isObj ect>>complex.realPart>>ch>>complex.imagPart>>ch;
18j    return isObj ect;
19    }
20    MiniComplex(double real=0,doub-le imag=0);
21  //构造函数
22    MiniComplex operator+  (const MiniC0mplex&0therC0mplex)const;
23  //重载运算符+
24 private:
25 double realPart;//存储实部变量
26 double imagPart;//存储虚部变量
27    };
28
29  void writeToFiie(char*);
1  //main.cpp
2  #include"MiniComplex.h"
3  MiniComplex::MiniComplex (double re-al,double imag)f realPart=reai;imagPart=imag;}
4  MiniComplex MiniComplex::operator+(const MiniComplex&otherComplex)const
5    {
6    //********333********
7
8
9    //********666********
10    }
11  int main()
12    {
13    void writeToFile(char*);
14    MiniComplex numl(23,34),num2(56,35);
15    cout<<"Initiai Value of Numl="<18    return 0;
19    }

选项

答案1 MiniComplex sum; //定义复数对象sum 2 sum.imagPart=this->imsgPart +otherComplex.imagPart;//把this中的虚部(this->imaqPart)和othercomplex虚部相加赋值给sum虚部 3 sum.realPart =this->realPart +otherComplex.realPart;//把this中的实部(this->reapart)加上othercomplex实部赋值给sum实部 4 return sum; //返回对象sum

解析 主要考查考生对运算符重载的掌握,题目要求编写op-erater+运算符函数,以实现复数的求和与运算。复数的和的实部等于两个复数的实部之和,虚部等于两个复数的虚部之和。函数要返回的类型是MiniComplex,因此要先定义一个MiniComplex类型变量sum,然后对它们的实部和虚部各自求和,返回sum即可。
转载请注明原文地址:https://kaotiyun.com/show/S4Np777K
0

最新回复(0)