#include<iostream>
#include<vector>
using namespace std;
class point	//point 类的定义
{
 public:	//外部接口
  point(int a=0,int b=0);//构造函数
  ~point();
  void display(void);
  void move(int xx,int yy);
 private:	//私有数据
  int x;
  int y;
};
//成员函数的实现
 point::point(int a,int b)
{
  x=a;
  y=b;
  cout<<"x="<<x<<" 构造函数被调用"<<endl;
}
 point::~point()
{
  cout<<"x="<<x<<" 析构函数被调用"<<endl;
}
 void point::display(void)
{
  cout<<"x="<<x<<" y="<<y<<endl;
}
 void point::move(int xx,int yy)
{
  x+=xx;
  y+=yy;
}
//主程序
 int main()
{
  int i;
  vector<point> p(3,point(1,1));//定义容纳3个point对象的容器
  for(i=0;i<3;i++)
   p[i]=point(i,i);//用无名对象初始化容器内的各个点
  cout<<"第一次显示各点的坐标"<<endl;
  for(i=0;i<3;i++)
   p[i].display();//显示每一个元素的坐标
  for(i=0;i<3;i++)
   p[i].move(1,1);
  cout<<"第二次显示各点的坐标"<<endl;
  for(i=0;i<3;i++)
   p[i].display();//显示每一个元素的坐标
  return(0);
}