面向对象编程实践题_第1页
面向对象编程实践题_第2页
面向对象编程实践题_第3页
免费预览已结束,剩余5页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面3设计一个时间类 Time,#includeclass/属性GetHour()returnvoidh)voidCTime x; 面3设计一个时间类 Time,#includeclass/属性GetHour()returnvoidh)voidCTime x; 2 #includeconst CCircle(doubleArea() return pi*r*r; SetRadius(double x) r=x; GetRadius() return r; Circumference()return2*pi*r;Show() f(%fn,r);voidCCircle例 struct Complex

2、double&doubledouble&Complex&operator=(constComplex&returnreturnComplex(doubler=4,doubleCCircle例 struct Complexdouble&doubledouble&Complex&operator=(constComplex&returnreturnComplex(doubler=4,doublefriendoperator+(Complexoperator+=(constComplex&operator-(Complexa,constComplex&friendoperator-=(Complex

3、&,constComplex&inline return*this; inlineoperator-=(Complex&t,constComplex&returninlineComplex:operator+(ComplexreturnComplex(real+b.real,imag+b.imag); inlineoperator-(Complexa,constComplex&/ inlineoperator*(Complexa,constComplex& inlineoperator/(constComplex&a,constComplex&double doublereal=(a.x*b.

4、x+a.y+b.y)/norm;doubleimag=(a.y*b.x-a.x*b.y)/norm; return Complex(real,imag);voidComplexinlineoperator/(constComplex&a,constComplex&double doublereal=(a.x*b.x+a.y+b.y)/norm;doubleimag=(a.y*b.x-a.x*b.y)/norm; return Complex(real,imag);voidComplexf(a+=bf(a-=bc=a+b;pr c=a-b; pr c=a*b;pr c=a/b; pr a+=b;

5、 pr a-/c=a+b=(16.00,/c=a-b=(-4.00,-/c=a*b=(-/c=a/b=(0.496970,-/a+=b=(16.00,/a-=b设计一个抽象类Sh,然后派生具体类Circle和Rectangle。具体类中提供计算面积的虚函数Area。#includeconstdoubl public:virtualprivateCCircle(doubleArea() return pi*r*r; SetRadius(double x) r=x; GetRadius() return r; Circumference()return2*pi*r;Show() f(%fn,r);

6、classCRectangle:publicprivateCRectangle(doubleu=0,doubleArea() return x*y; SetX(doubleu)x=u; GetY() return y; Show() f(%f,%fn,x,y);voidCCirclep-AoperatorBC Area() return x*y; SetX(doubleu)x=u; GetY() return y; Show() f(%f,%fn,x,y);voidCCirclep-AoperatorBC #include class &classB:public* &B(constB&B&o

7、perator=(constB&B()delete& B:operator ( returnelse f(boundreturnB&B:operator=(constB&deleteelse f(boundreturnB&B:operator=(constB&deletereturn *this;B:B(constB&classC:publicpublic:C(constC&r):k):voidC/a,dCf(bfadeout/b/d深部数组元素a.p0b/输出:88; bfade out习题 模板1. #include templateclassvoidswap(T&x,Ttemplate

8、voidSelectSort(Ta,Tt=x;x=y;show(a,i+1,n); if (ajamin)习题 模板1. #include templateclassvoidswap(T&x,Ttemplate voidSelectSort(Ta,Tt=x;x=y;show(a,i+1,n); if (ajamin) template void show(T * a,f(%dtvoid2. #include templateclassvoidswap(T&x,T&y) template void show(T * a,f(%dTt=x;x=y;f(%dttemplate voidBubbleSort(Ta,/in-1show(a,i, if (ajaj+1) voidshow(a,template voidBubbleSort(Ta,/in-1show(a,i, if (ajaj+1) voidshow(a,7,3. 用函数模板实现 # include templateclassvoidshow(T*f(%dttemplate voidInsertSort(Ta,/从起向前搜寻voidlon

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论