C++程序题一道,求解答。
#include<iostream>#include<fstream>usingnamespacestd;classcomplex{public:intreal;inti...
#include<iostream>
#include<fstream>
using namespace std;
class complex
{
public:
int real;
int imag;
complex(int r=0,int i=0)
{
real=r;
imag=i;
}
};
complex operator+( complex&a,complex& b)
{
int r=a.real+b.real;
int i=a.imag+b.imag;
return complex(r,i);
}
void main( )
{
complex x(1,2),y(3,4),z;
z=x+y;
cout<<z.real<<″+″<<z.imag<<″i″<<endl;
}
最后的运行结果是什么,求解答!
为什么运行不出来?里面有什么错误? 展开
#include<fstream>
using namespace std;
class complex
{
public:
int real;
int imag;
complex(int r=0,int i=0)
{
real=r;
imag=i;
}
};
complex operator+( complex&a,complex& b)
{
int r=a.real+b.real;
int i=a.imag+b.imag;
return complex(r,i);
}
void main( )
{
complex x(1,2),y(3,4),z;
z=x+y;
cout<<z.real<<″+″<<z.imag<<″i″<<endl;
}
最后的运行结果是什么,求解答!
为什么运行不出来?里面有什么错误? 展开
3个回答
展开全部
#include<iostream>
#include<fstream>
using namespace std;
class complex1
{
public:
int real;
int imag;
complex1(int r=0,int i=0)
{
real=r;
imag=i;
}
};
complex1 operator+( complex1& a,complex1& b)//运算符重载
{
int r=a.real+b.real; //为Int成员直接相加
int i=a.imag+b.imag;
return complex1(r,i); //返回值为一个complex1对象
}
int main()// complex为C++关键字 ...
{
complex1 x(1,2),y(3,4),z;
z=x+y;
cout<<z.real<<"+"<<z.imag<<"i"<<endl; //输出4+6i
return 0;
}
追问
complex(int r=0,int i=0)
{
real=r;
imag=i;
}
};
这个函数有什么作用呢?
追答
这个是构造器,在complex x(1,2)的时候,把real赋值为1,imag赋值为2。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
复数加法
输出
4+6i
追问
complex(int r=0,int i=0)
{
real=r;
imag=i;
}
};
这个函数的作用是什么。
追答
构造函数,
用r和l作为参数,构造一个complex类型的对象(其中这个对象里面的real保存r,imag保存1,是一个表示real + imag (i) 的复数的对象)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
哈哈,你用了汉字的全角的:和;不是英文模式下的:和;你还没看现。你用什么编辑器啊!
哈哈,你还用了全角模式的,与“
哈哈,你还用了全角模式的,与“
追问
ok,改过来之后就行了。
追答
哈哈,没什么。我也犯过的错误。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询