第七周上机报告(项目二:两点间距离之不同函数的实现)
2013-04-15 11:07
204 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: 两点间距离——三种函数的实现.cpp * 作者:王昕彤 * 完成日期: 2013年 4 月 15 日 * 版本号: v1.0 * 输入描述:无 * 问题描述:无 * 程序输出:无 */ #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) {} // 请继续写需要的代码 double distance1(CPoint &); // 成员函数声明 friend double distance2(CPoint &,CPoint &); // 友元函数声明 int getx() { return x; } int gety() { return y; } }; double distance3(CPoint &,CPoint &); //一般函数声明 double CPoint::distance1(CPoint &t) //成员函数的实现,dispaly1前加CPoint:: { double dx,dy; dx=x-t.x; dy=y-t.y; return sqrt(dx*dx+dy*dy); } double distance2(CPoint &t1,CPoint &t2) //友元函数的实现,distance2前不加CPoint::,并不是类的成员函数 { //不是类的成员函数,却可以t1.x的形式直接访问私有数据成员——友元 double dx,dy; dx=t1.x-t2.x; dy=t1.y-t2.y; return sqrt(dx*dx+dy*dy); } double distance3(CPoint &t1,CPoint &t2) //一般函数的实现,distance1前加CPoint:: { //不能直接访问,只能用公共接口t1.getx()形式访问私有数据成员 double dx=t1.getx()-t2.getx(),dy=t1.gety()-t2.gety(); return sqrt(dx*dx+dy*dy); } int main() { CPoint t1(10,13),t2(5,9); t1.distance1(t2); //成员函数这样调用 distance2(t1,t2); //友员函数的调用和一般函数无异 distance3(t1,t2); //一般函数的调用 cout<<"成员函数:"<<t1.distance1(t2)<<endl; cout<<"友元函数:"<<distance2(t1,t2)<<endl; cout<<"一般函数:"<<distance3(t1,t2)<<endl; return 0; }
运行结果:
相关文章推荐
- 《C++第七周实验报告2-1》---利用成员函数、友元函数和一般函数,实现三个版本的求两点间距离的函数
- 第七周项目1 三种不同函数求两点间的距离
- 第七周 项目二:成员函数、友元函数、一般函数之区别(实现三个版本的求两点间距离)
- 第七周项目 用一般函数求两点之间的距离
- 第七周项目一求两点距离 一般函数
- 第七周项目(1)-普通函数求两点间距离
- 第七周实验报告(二)利用成员函数、友元函数和一般函数求两点之间距离
- 第七周上机时间项目——项目1-求两点距离
- 第七周项目2:求两点的距离(1)成员函数
- 第七周项目 用一般函数,成员函数,友元函数求两点之间的距离
- 第七周项目2:求两点的距离(3)一般函数
- 第七周任务二(利用成员函数、友元函数和一般函数,实现三个版本的求两点间距离的函数)
- 第七周项目(1)-成员函数求两点间距离
- 第七周项目 求两点之间的距离 成员函数
- 第七周项目2:成员函数、友元函数和一般函数求两点间的距离
- 第七周上机实践项目——项目1- 求两点间的距离(利用友元函数)
- 第七周项目 用友元函数求两点之间的距离
- 第七周项目一求两点距离 成员函数
- 第七周 项目三 体会成员函数 友元函数 一般函数 分别求两点间的距离
- 第七周项目2:求两点的距离(2)友元函数