下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 o 页共 5 页、判断题(1515 分)(对的打,错的打X)1.友元函数用于允许一个函数访问不 相关类的私有部分。2.构造函数可以被继承。3.动态绑定的多态性是通过虚函数实 现的。4.在 C+中,传引用调用等同于传地 址调用。5.重载函数必须有不同的参数列表。6.可以用 delete 释放不是用 new 运算 符分配的内存。7.类成员的默认访问模式是private。8.在类 Time 中的析构函数可以声明 为:void Time(int);9.con st 对象必须初始化。10. 在 C+中,只能重载已有的运算符。二、选择题(2020 分)1. 关键字 _说明对象或变量初始化后不会被修改。
2、a. static b. public c. const d. in li ne2. 如果调用带有默认参数的函数时缺少一个参数,则_参数就作为这一参数。a.第一个 b.最后一个c.中间一个d.以上都不是3.成员函数可声明为静态的,条件是它不访问类成员。a.静态b.常数c.非静态d.公共4.内联函数执行起来比标准函数从 int 至 U float d.从 float 至 U int7.表达式Iong(intVar) 也可表示为a. in tvar = long; b.in tVar(lo ng)c. (long)intVard.以上都不是8.静态数据成员的生存期a.与整个程序相同 b.不长于类
3、的生存期c. 取决于创建的对象数d.以上都不是9.要让一个类中的所有对象具有共同的数据,请使用。b.私有数据成a.常数成员变量员c.静态数据成员d.以上都是10. 设置虚基类的目的是:a.简化程序b.消除二义性c.提高运行效率d.减少目标代码三、指出下列程序片段中的错误标号,写 出正确语句或解释错在何处。(2020 分)1) int in dex=675;2const int *ptr= &in dex;3int *const n tptr= &in dex;4*ptr=555;5勺 tptr=666;6int ano ther=8;7ptr=&ano ther;8n
4、tptr =&ano ther;2) int arrp; arrp=new in t15;第 o 页共 5 页a.更慢 b.更快 c.次数更多d.以上都不是5. 默认参数的值由 _提供。a.该函数 b.调用程序c.上述二者 d.以上都不是6.在C+ 中,混合类型表达式delete3)下面程序为什么会编译错误,并改正错误(提出解决办法)。a.允许存在b.为一错误 c.class win dowprotected:intbasedata; ;第1页共 5 页class border: public win dow ;;double coun t(A & a)class menu:
5、public wi ndow ;a.total+=a.rate*a.total;classborder_a nd_me nu: publicreturn a.total;border, public menuint main( void)public:int show()A x(80,0.5),y(100,0.2); retur n basedata;4)改正下面程序段中的错误,写出整个正coutco un t(x),co un t(y)ncoutco un t(x)n:return 0;执行结果:确的程序段template2)void print(T *a)#in clude coutvav
6、vn;using n amespace std;void mai n()class Countprivate:const int x=0;static in t coun ter;coutvvyvv nin t obj_id;int y;public:x=5;Coun t(); /con structorint* pstatic void display_total(); /staticp=&y;fun ctio nprin t(p);void display();return 0;四、写出下面程序的执行结果:(1515 分)Count(); /destructorint Count:
7、counter; /definition of static datamember1)#include Coun t:Co un t() /c on structorusing n amespace std;class Acoun ter+;friend double count(A&);obj_id = coun ter;public:A(double t, double r):total(t),rate(r)Coun t:Co un t() /destructorprivate:double total;coun ter-;double rate;coutObject nu mbe
8、r obj id being第2页共 5 页destroyedn;void Coun t:display_total() /static functionricout Number of objects created is co untere ndl;void Coun t:display()ricout Object ID is obj_ide ndl;nt main( void)riCou nt a1;Coun t:display_total();Count a2, a3,a4;Coun t:display_total();a2.display();a4.display();return
9、 0;3) #include using n amespace std;class BASErichar c;public:BASE(char n):c( n) virtualBASE()coutc;class DERIVED:public BASEchar c;public:DERIVED(char n):BASE( n+1),c( n)DERIVED()coutc;nt main( void) DERIVED(X);return 0;五、 程序填空:(1010 分)#in clude using n amespace std;class A_ (1) _char n ame80;publi
10、c:A( _ ( 2)_) _ (3)_;class B_ (4) _public:B(constchar*n)_( 5 )_voidPrin tName()cout ”ame:”nameendl;void mai n()B b1( Ling Li ”b1.Pri ntName(); /执行结果:n ame: Ling Li六、 编程题(2020 分)1 编写程序:定义抽象基类 Shape,由它派 生出五个派生类: Circle (圆形)、 Square (正 方形)、Rectangle (长方形)、Trapezoid (梯形)和 Triangle(三角形),用虚函数分别计算各种图形的面积,并
11、求出它们的和。要求用基类指针数组。使它的每一个元素指向一个 派生类的对象。注:主函数中定义如下对象Circle circle(12.6);Square square(3.5);Rectangle rectangle(4.5,8.4);Trapezoid trapezoid(2.0,4.5,3.2);Triangle triangle(4.5,8.4);第3页共 5 页杭州电子科技大学学生考试卷(A)答案class menu: virtual public window ;4)整个正确的程序段(参考):#in clude 加本句template / 力口 type name voidprint(
12、T *a)coutan;void mai n() int y=10;/y 应先声明后使用,并给初值const int x=0;coutyn:x=5;x 为 con st,去掉该句int* p;p=&y;prin t(p);/ return 0; ma in 返回为 void ,去掉该句 四、写出下面程序的执行结果:(1515 分)1)2) int arrp; 应改为:int *arrp; delete arrp; 应改为: delete arrp;3)return basedata;/在border_and_menu中引用basedata时产生二义性,应使用虚基类应改为:、判断题(15
13、15 分)1) V2) X3)V4) X5) V6)X7) V8) X9) V10) V_ 、选择题(2020 分)1)c 2) b3)c4)b5)c6)a7) c 8) a 9) c10)b三、指出下列程序片段中的错误,并解释 错在何处。(2020 分)1) *ptr=555;ptr 是指向整数常量的指 针ntptr =&another;ntptr 是常量指针,不能指向别的的变量120,120120,1201801802)IMiimJber of objectsNuLmbei* of objectsObject ID is 2 Object ID is4cteatedcieated
14、_isObject nuintbei 4 be ing-Objectnumhe严3 beingObject nunbcr- 2 bein# Objectnumbei* 1 be ins _ISdestroyeddestroyed3 3)XYXY第4页共 5 页class border:virtual public window ;五、 程序填空:(1010 分)(1)protected:或 public( 2)const char*n (3)strcpy(name,n);(4): public A 或:protected A( 5):A(n)六、 编程题(2020 分1.#in clude u
15、sing n amespace std;class Shape第5页共 5 页public:virtual double area() const =0;;class Trian gle:public Shapepublic:Trian gle(doublew,doubleclass Circle:public Shapeh):width(w),height(h)public:virtual double area() constreturnCircle(double r):radius(r)0.5*width*height;virtual double area()constreturnpr
16、otected:3.14159*radius*radius;double width,height;protected:;double radius;int mai n()class Square:public ShapeCircle circle(12.6);public:Square square(3.5);Square(double s):side(s)Rectangle rectangle(4.5,8.4);virtual double area()constreturnTrapezoid trapezoid(2.0,4.5,3.2);side*side;Triangle triangle(4.5,8.4);protected:Shapedouble side;*pt5=&circle, &square,&recta ngle, &trapez;oid, &tria ngle;double areas=0.0;class Recta ngle:public Shapefor(int i=0;iarea();Recta ngle(doublew,doublecouttotol of all areas=arease ndl;h):width(w),height(h)return 0;vi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 许昌学院《有机化学导论》2022-2023学年第一学期期末试卷
- 许昌学院《经典电影作品研究》2022-2023学年第一学期期末试卷
- 儿科医生科普腹泻护理
- 商务用品购销合同文本
- 墙体改造工程招标
- 户籍转迁声明
- 外研版新八年级下册阅读
- 放学期间小学生自我安全承诺
- 交通安全放心保证
- 劳务分包施工防水合同的
- 【公开课】小说阅读优秀课件
- 新概念青少版入门级A 单词
- 《口译基础》课程教学大纲(本科)
- DB11T 594.1-2017 地下管线非开挖铺设工程施工及验收技术规程第1部分:水平定向钻施工
- 八年级历史上册第二次月考测试试题
- 丝网印刷常见异常及解决方法
- MOM数字化工厂解决方案
- 压力容器年度安全检查报告
- 锅炉电梯井外彩钢板封闭工程施工方案
- 外墙真石漆专项施工方案(48页)
- 第7章熔盐电解
评论
0/150
提交评论