第7周项目1(2)成员函数、一般函数和友元函数的区别
2016-04-10 13:57
423 查看
/* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称 : *作 者 : 刘云 *完成日期 : 2016年4月10号 *版 本 号 : v1.0 * *问题描述 : 点类中的距离 *输入描述 : 无 *程序输出 : 1.41421 */ #include<iostream> #include<cmath> 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,CPoint &p2); friend void distance2(CPoint &p1,CPoint &p2); double getX(){return x;} double getY(){return y;} }; void CPoint::distance1(CPoint &p1,CPoint &p2) { double s; s=sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y)); cout<<s<<endl; } void distance2(CPoint &p1,CPoint &p2) { double s; s=sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y)); cout<<s<<endl; } void distance3(CPoint &p1,CPoint &p2) { double s; s=sqrt((p1.getX()-p2.getX())*(p1.getX()-p2.getX())+(p1.getY()-p2.getY())*(p1.getY()-p2.getY())); cout<<s<<endl; } int main() { CPoint p1(0,0),p2(1,1); p1.distance1(p1,p2); distance2(p1,p2); distance3(p1,p2); return 0; }
心得:
更加明确了一般函数,友元函数和成员函数的应用。
相关文章推荐
- c2143 syntax error
- Mac mysql 数据库安装总结
- 【算法】非重复随机序列生成
- windows下通过DOS命令提示符进入MySQL数据库
- 逗号运算符
- opencv中的矩阵操作
- 构建之法阅读笔记05
- 三维高斯模型 opencv实现
- 简单切个图
- Apache James邮件服务器介绍及配置发送外网邮件
- 线性均值滤波和中值滤波的比较
- js继承 prototype和constructor
- 重构第23天 引用参数对象(Introduce Parameter Object)
- 一个有趣的Java程序,执行结果出人意料!
- SQL Server 2012 开发新功能 序列对象(Sequence)(转)
- 大牛博客
- 边缘特征提取方法
- 邁向IT專家成功之路的三十則鐵律 鐵律十:IT人思維之道-跳脫框架
- opencv 画延长线
- Spring 事务模型