#include
using namespace std;
class multiply
{
private:
int n;
int m;
public:
multiply(int in=0,int im=0)
{
n=in;
m=im;
}
multiply(multiply &mu)
{
n=mu.n;
m=mu.m;
}
void Print()
{
cout<<n<<"x"<<"^"<<m<<"\n";
}
friend multiply operator*(const multiply &,const multiply &);
friend multiply operator+(const multiply &,const multiply &);//为什么这行编译不过去 说内部编译错误
};
multiply operator*(const multiply & c1,const multiply & c2)
{
return multiply(c1.n*c2.n,c1.m+c2.m);
}
multiply operator+(const multiply & c1,const multiply & c2);
{
return multiply(c1.n+c2.n,c1.m);
}
int main()
{
multiply c1(2,3),c2(3,1),c;
c1.Print();
c2.Print();
c=c1*c2;
c.Print();
return 0;
}
|