#include <iostream>
using namespace std;
class Point
{
public:
Point(double x=0,double y=0); //构造函数
void SetPoint(double,double); //设置坐标值
double GetX( ) const {return x;} //读x坐标
double GetY( ) const {return y;} //读y坐标
friend ostream & operator<<(ostream &,const Point &);//重载运算符“<<”
protected: //受保护成员
double x,y;
};
//Point的构造函数
Point::Point(double a,double b)
{
x=a;
y=b;
}
//设置x和y的坐标值
void Point::SetPoint(double a,double b)
{
x=a;
y=b;
}
ostream & operator<<(ostream &output,const Point &p)
{
output<<"["<<p.x<<","<<p.y<<"]"<<endl;
return output;
}
int main( )
{
Point p(1.5,6.2);
cout<<"x="<<p.GetX( )<<",y="<<p.GetY()<<endl;
p.SetPoint(3.5,6.9);
cout<<"p:"<<p<<endl;
return 0;
}