第七周项目二——成员函数、友元函数和一般函数之区别

来源:互联网 发布:计算机编程书籍下载 编辑:程序博客网 时间:2024/05/22 03:23
/*  * 程序的版权和版本声明部分  * Copyright (c)2013, 烟台大学计算机学院学生  * All rightsreserved.  * 文件名称: object.cpp  * 作者:杨晨 * 完成日期: 2013年4 月 12 日  * 版本号: v1.0  * 输入描述:无  * 问题描述:无  * 程序输出:无  */#include<iostream>#include<cmath>#include<stdlib.h>using namespace std;class CPoint{private:    double x;  // 横坐标    double y;  // 纵坐标 public:    CPoint(double xx=0,double yy=0):x(xx),y(yy){}    void distance1(CPoint &p1);    friend void distance2(CPoint &p1,CPoint &p2);    double getx(){return x;}    double gety(){return y;}};void distance3(CPoint &p1,CPoint &p2);void CPoint::distance1(CPoint &p1){double dis=sqrt((p1.x-x)*(p1.x-x)+(p1.y-y)*(p1.y-y));cout<<"两点间的距离为:"<<dis<<endl;}void distance2(CPoint &p1,CPoint &p2){double dis=sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));cout<<"两点间的距离为:"<<dis<<endl;}void distance3(CPoint &p1,CPoint &p2){double dis=sqrt((p1.getx()-p2.getx())*(p1.getx()-p2.getx())+(p1.gety()-p2.gety())*(p1.gety()-p2.gety()));cout<<"两点间的距离为:"<<dis<<endl;}int main(){CPoint p1,p2(3,4);p1.distance1(p2);distance2(p1,p2);distance3(p1,p2);system("pause");return 0;}


输出结果: