您的位置:首页 > 其它

点类

2016-04-12 19:46 387 查看
/*
* Copyright (c) 2016,烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名称:main.cpp
* 作    者:胡庆龙
* 完成日期:2016年4月8日
* 版 本 号:v1.0
*
*问题描述:写一个点类,分别用类的友元函数、类的成员函数和普通函数求两个点的距离
*/
#include <iostream>
#include <cmath>
using namespace std;

class CPoint
{
public:
CPoint(double xx = 0,double yy = 0):x(xx),y(yy){}
friend void distance_two(CPoint &op1,CPoint &op2);
double retdatx(){return x;}
double retdaty(){return y;}
void distance_one(CPoint &op){cout << sqrt((x-op.x)*(x-op.x)+(y-op.y)*(y-op.y)) << endl;}
private:
double x;
double y;
};

void distance_two(CPoint &op1,CPoint &op2)
{
cout << sqrt((op1.x-op2.x)*(op1.x-op2.x)+(op1.y-op2.y)*(op1.y-op2.y)) << endl;
}

void distance_three (CPoint &op1,CPoint &op2)
{
cout << sqrt((op1.retdatx() - op2.retdatx())*(op1.retdatx() - op2.retdatx())
+(op1.retdaty() - op2.retdaty())*(op1.retdaty() - op2.retdaty())) << endl;
}

int main()
{
CPoint p1(0,0),p2(2,0);
p1.distance_one(p2);
distance_two(p1,p2);
distance_three(p1,p2);
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: