小女子有个class程序读不明白,好心人给讲讲!
程序代码:#include <iostream>
using namespace std;
class Point;
ostream& operator<<(ostream& o, const Point& d);
class Point {
int x , y ;
public :
void set (int a ,int b) { x = a ,y = b ; }
Point operator+(const Point& d ) ; //here ,为什么要用Point operator+(const Point&d)而不是operator+(const Point& d) ?
friend ostream& operator<<(ostream& o, const Point& d) ;
} ;
Point Point::operator+(const Point &d ) //这两个Point 各自什么意思?可以给讲讲吗?为什么用两个Point ?
{
Point s ;
s.set (x+d.x,y+d.y);
return s ;
}
ostream& operator<<(ostream& o, const Point& d) {
return o<<"("<<d.x<<", "<<d.y<<")\n" ;
}
void main()
{
Point s,t ;
s.set(2,5);
t.set(3,1);
cout<<s+t ;
}








