65,210
社区成员
发帖
与我相关
我的任务
分享#include<iostream>
using namespace std;
class Complex
{
int a;
int b;
public:
Complex(int a=0,int b=0)
{
this->a=a;
this->b=b;
}
int getA()
{
return a;
}
int getB()
{
return b;
}
friend ostream& operator<< (ostream& out, const Complex& c);
friend Complex operator+(const Complex& a,const Complex& b);
};
Complex operator+(const Complex& a,const Complex& b)
{
Complex ret;
ret.a=a.a+b.a;
ret.b=a.b+b.b;
return ret;
}
ostream& operator<<( ostream& out,const Complex& c) //进行重载,用可是他怎么知道out会传递进来呢?
{
out<<c.a<<"+"<<c.b<<"i";
return out;
}
int main()
{
Complex c1(1,2);
Complex c2(3,4);
Complex c3=c1+c2;
cout<<c1<<endl; //这里传递的是什么呢???
cout<<c2<<endl;
cout<<c3<<endl;
cout<<"press any key to continue..."<<endl;
cin.get();
return 0;
return 0;
}