一道初级的C++问题,不知道错在哪,求高手解答

来源:百度知道 编辑:UC知道 时间:2024/05/29 19:22:23
#include<iostream>
using namespace std;
class stu
{
private:
int x;
int y;
public:
stu(){}
stu(int x1,int y1);
st(int r){x=r;y=0;}
stu operator+ (stu &qq,stu &tt);
void disp()
{cout<<"("<<x<<y<<")"<<endl;}
};

stu(int x1,int y1)
{
x=x1;
y=y1;
}

stu operator+ (stu &qq,stu &tt)
{
return stu(qq.x+tt.x,qq.y+tt.y);
}

int main()
{
stu a(1,2),c;
c=a+stu(2);
c.disp();
return 0;
}
不知道错在哪里,求解答。。。。

#include<iostream>
using namespace std;
class stu
{
private:
int x;
int y;
public:
stu(){}
stu(int x1,int y1);
stu(int r){x=r;y=0;} /////////////////st->stu
stu operator+ (stu &qq);
void disp()
{cout<<"("<<x<<y<<")"<<endl;}
};

stu::stu(int x1,int y1)
{
x=x1;
y=y1;
}

stu stu::operator+ (stu &qq) /////////////////
{
return stu(qq.x+x,qq.y+y); //////////////
}

int main()
{
stu a(1,2),c;
c=a+stu(2);
c.disp();
return 0;
}

c=a+stu(2);
这句话是什么意思啊,如果是要两个对象相加那么应该这样写
c=a+c.st(2);
你原意也是这样吧

#include<iostream>
using namespace std;
class stu
{
private:
int x;
int y;
public:
stu(){}
stu(int x1, int y1);