初学c基础知识要点

初学c基础知识要点

ID:40123419

大小:432.31 KB

页数:44页

时间:2019-07-22

初学c基础知识要点_第1页
初学c基础知识要点_第2页
初学c基础知识要点_第3页
初学c基础知识要点_第4页
初学c基础知识要点_第5页
资源描述:

《初学c基础知识要点》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C++程序设计主讲:李晓勇Email:lxyonghn@163.comTelphone:13819194055一、友元1、引入理由安全性----封装:类的成员函数才能访问类的私有成员,其他函数不能访问私有成员的。高效率----非封装:(1)将数据定义成公有成员----破坏隐藏性(2)友元函数----提高效率,破坏隐藏性2、友元特点(1)在类中用friend说明。位置任意,含义相同。(2)友元分:例1,在平面上计算两个点之间的距离。假设第一个点(x1,y1),第二个点(x2,y2)----普通函数作友元函数友元类普通函数成员函数友元函数classpoint//点的类{publ

2、ic:point(doublexx,doubleyy){x=xx;y=yy;}voidprint_xy(){cout<<"("<

3、x*dx+dy*dy);}voidmain(){pointp1(3.0,4.0),p2(6.0,8.0);p1.print_xy();p2.print_xy();doubles=distance(p1,p2);//普通函数方式调用cout<<"Distanceis"<

4、y;};例2,其他类的成员函数作友元函数:voidmain(){Aa1;Bb1(100);a1.disp(b1);}//通过a1的成员函数//调用b1的数据成员//运行结果:vb.y=100友元例3,普通函数成为两个类的友员classBoat;classCar{public:Car(intj){size=j;}friendintleisure(inttime,Car&aobj,Boat&bobj);//友员函数protected:intsize;};classBoat{public:Boat(intj){size=j;}friendintleisure(inttime,Ca

5、r&aobj,Boat&bobj);//友员函数protected:intsize;};intleisure(inttime,Car&aobj,Boat&bobj)//友员定义{returntime*aobj.size*bobj.size;}voidmain(){Carc1(2);Boatb1(3);inttime=4;cout<

6、;//类作为友元。说明位置任意public:voidset(inti){m=i;}voidset(yy1);private:intm;};classy{public:voiddisp(xp){cout<<"p.m="<

7、元类的说明:1、友元关系是不能传递的。A类是B类的友元,B类是C类的友元,则A类与C类之间没有任何关系。2、友元关系是单方向。A类是B类的友元,则A类的成员函数可以访问B类中的所有成员;但B类中的成员函数不能访问A类中的所有成员。二、运算符重载1、什么是运算符重载?赋予已有的运算符多重含义。运算符是一种特殊的函数。例:+(4,5)=>4+5函数的语义可以重新定义。重新定义的运算符又称运算符函数。2、目的:使C++代码更直观、更易读。3、哪些运算符可以重载?可以重载:算术运算符:+,-,*,/,%,++,--位操作运

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。