C++友元习题复习课程.doc

C++友元习题复习课程.doc

ID:60849374

大小:1.03 MB

页数:15页

时间:2020-12-23

C++友元习题复习课程.doc_第1页
C++友元习题复习课程.doc_第2页
C++友元习题复习课程.doc_第3页
C++友元习题复习课程.doc_第4页
C++友元习题复习课程.doc_第5页
资源描述:

《C++友元习题复习课程.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、…………………………………………………………最新精品资料推荐……………………………………………………01.分析以下程序的执行结果 #include classSample { intn; public: Sample(inti){n=i;} friendintadd(Sample&s1,Sample&s2); }; intadd(Sample&s1,Sample&s2) { returns1.n+s2.n; } voidmain() { Samples1(10),s2(20); cout<

2、< classB; classA { inti; public: intset(B&); intget(){returni;} A(intx){i=x;} }; classB { inti; p

3、ublic: B(intx){i=x;} friendA;…………………………………………………………最新精品资料推荐……………………………………………………15…………………………………………………………最新精品资料推荐…………………………………………………… }; intA::set(B&b)//由于使用了类B的定义,故本函数的定义应放在类B定义之后 { returni=b.i; } voidmain() { Aa(1); Bb(2); cout<

4、dl; } 解: 本题说明友元类的使用方法。这里将类A设置为类B的友元类,因此,类A的所有成员函数均为类B的友元函数。通过调用a.set(b)将b对象的i值赋给a对象的i值。 所以输出为:1,2 ------------------------------------------------- 03.有一个学生类student,包括学生姓名、成绩,设计一个友元函数,比较两个学生成绩的高低,并求出最高分和最低分的学生。 解: #include #include classstudent

5、{ charname[10]; intdeg; public: student(charna[],intd) { strcpy(name,na); deg=d; } char*getname(){returnname;} friendintcompare(student&s1,student&s2) { if(s1.deg>s2.deg) return1; elseif(s1.deg==s2.deg) return0; elsereturn-1;…………………………………………………………最新精品资料推荐………………………………………

6、……………15…………………………………………………………最新精品资料推荐…………………………………………………… } }; voidmain() { studentst[]={student("王华",78),student("李明",92),student("张伟",62),student("孙强",88)}; inti,min=0,max=0; for(i=1;i<4;i++) { if(compare(st[max],st[i])==-1) max=i; elseif(compare(st[i],st[min])==1) mi

7、n=i; } cout<<"输出结果:"<

8、70~79:中;60!69:及格;小于60:不及格。 解: #include #include #include classstudent { charn

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

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

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