第七周上机实践项目——项目1-点类

来源:互联网 发布:网络禁书100本百度云 编辑:程序博客网 时间:2024/04/19 11:03
/* *Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作    者:郭永恒 *完成日期:2016年4月11日 *版 本 号: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;}

运行结果:


0 0
原创粉丝点击