(1)数据成员包括两点坐标(x,y),成员函数包括构造函数、析构函数、复制构造函数;
(2)包括求点的坐标的公有接口函数,打印点坐标的成员函
数,并在主函数中调用。
(3)在主函数中实例化出两个点a(0,0),b(6,8),求出两点间的距
离。
实验思路:
设计点类,将两个整型变量作为点的x、y坐标包含在私有数据成员里,用点的坐标的公有接口函数来得到点的x、y坐标,构造函数、析构函数、复制构造函数都包含在公有类型成员里,求两点间的距离,这时可以用一个友元函数,能够直接访问x、y的坐标,再编写函数求两个点的距离。
#include <iostream>
#include <cmath>
using namespace std;
class Point{
public:
Point(int xx,int yy):x(xx),y(yy){}
Point(Point& p):x(p.x),y(p.y){}
~Point(){}
int getX()const{return x;}
int getY()const{return y;}
friend int dis(Point& p,Point& q);
private:
int x,y;
};
int dis(Point& p,Point& q){
return sqrt(pow((p.x-q.x),2)+pow(((p.y-q.y)),2));
}
int main(){
Point a(0,0);
Point b(6,8);
cout << "The coordinates of b point are " <<
"(" << b.getX()<< "," << b.getY() << ")";
cout << endl;
cout << "The distance between points a and b is " << dis(a,b) << endl;
return 0;
}