第7周任务2:成员、友元和一般函数的区别
2013-04-17 20:14
253 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: 1.cpp * 作者:石晓涛 * 完成日期: 2013年 4 月 17 日 * 版本号: 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 &); //友元函数声明 double getx(){return x;} double gety(){return y;} }; double distance3(CPoint &, CPoint &); //一般函数声明 double CPoint::distance1(CPoint &p) //成员函数的实现 { double d; d=sqrt((p.x-x)*(p.x-x)+(p.y-y)*(p.y-y)); return d; } double distance2(CPoint &a,CPoint &b) //友元函数的实现 { double d; d=sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)); return d; } double distance3(CPoint &a,CPoint &b) //一般函数的实现 { return sqrt((a.getx()-b.getx())*(a.getx()-b.getx()) +(a.gety()-b.gety())*(a.gety()-b.gety())); } int main() { CPoint c1(4,5),c2(-2,3); cout<<"成员函数输出"<<c1.distance1(c2)<<endl; //成员函数这样调用 cout<<"友元函数输出"<<distance2(c1,c2)<<endl; //友元函数调用 cout<<"一般函数输出"<<distance3(c1,c2)<<endl; //一般函数调用 system("pause"); return 0; }
运行结果:
相关文章推荐
- 第7周任务2:成员函数、友元函数和一般函数之区别
- 第7周项目二-成员函数、友元函数和一般函数之区别 点类
- 第7周项目1-成员函数、友元函数和一般函数有区别(2)
- 第7周,项目2.成员函数,友元函数.一般函数之间的区别,点类
- 第7周项目1:成员函数、友元函数和一般函数有区别(1)
- 第7周项目1-成员函数、友元函数和一般函数有区别(3)
- 第7周项目1:成员函数、友元函数和一般函数有区别(2)
- 2013级C++第7周(春)项目——深复制、友元、模板 【项目3-成员函数、友元函数和一般函数有区别】
- 第六周 项目四 成员、友元和一般函数有区别
- 第7周-项目1-成员函数、友元函数和一般函数有区别
- 第7周任务2(成员函数,友元函数,一般函数的区别,以求两点距离为例)
- C++第7周项目2 - 成员函数、友元函数和一般函数之区别
- 第七周上机实践项目1(2):成员、友元和一般函数的区别
- 第七周上机任务项目2-成员函数、友元函数和一般函数的区别
- 第七周上机任务(成员函数、友元函数和一般函数之区别)
- 第7周项目1-成员函数、友元函数和一般函数有区别(2)
- c++第七周任务-成员函数、友元函数和一般函数的区别
- 第七周上机实践项目1(1):成员、友元和一般函数的区别
- C++第7周(春)项目3 成员函数、友元函数和一般函数有区别
- C++第7周(春)项目3 成员函数、友元函数和一般函数有区别