|
发表于 2009-11-5 00:48:15
|
显示全部楼层
IP:江苏扬州
注意重载的+的使用方法, 给你改好了
程序代码:
#include <iostream>
using namespace std;
class Point;
Point operator +(const Point& a,const Point& b);
Point add(const Point& a,const Point& b); //VC++6 没有sp6补丁的必须有提前声明
class Point
{
friend Point operator +(const Point& a,const Point& b);
friend Point add(const Point& a,const Point& b);
public:
void set(int a,int b)
{
x=a,y=b;
}
void print()const
{
cout<<"("<<x<<","<<y<<")"<<endl;// 注意格式
}
private:
int x,y;
};
Point operator+(const Point& a,const Point& b)
{
Point s;
s.set(a.x+b.x,a.y+b.y);
return s;
}
Point add(const Point& a,const Point& b)
{
Point s;
s.set(a.x+b.x,a.y+b.y);
return s;
}
void main()
{
Point a,b;
a.set(3,2);
b.set(1,5);
(a+b).print();//+号的使用
add(a,b).print();//add方法的使用
} |
|