【Z】C++Qt试题413_第1页
【Z】C++Qt试题413_第2页
【Z】C++Qt试题413_第3页
【Z】C++Qt试题413_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、C+部分:一、选择题:(共10小题,每题3分)1 .类的构造函数被自动调用执行的情况是在定义该类的(C)A)成员函数时B)数据成员时C)对象时D)友元函数时.2 .说明友元函数使用关键字(A)A)friendB)staticC)constD)colatile.3 .已知类X中的一个成员函数说明如下:VoidSet(x&a);其中,X&a的含义是(C)A)指向类X的指针为aB)将a的地址赋给变量SstC)a是类X的对象引用,用来做为Set()的形参D)变量X是a按位相与作为函数Set()的参数.4 .关于new运算符的下列描述中(C)是不对的.A) 它可以用来动态创建对象和对象数

2、组B) 使用它创建对象或对象数组,可以使用运算符DELETE删除C) 使用它创建对象时要调用构造函数D) 使用它调用对象数组时不E)许指F)定初始值.5 .允许访问类的所有对象的私有成员,公有成员和保护成员的是(A)A)友元函数B)成员函数C)内联函数D)重载函数.6 .局部变量可以隐藏全局变量,那么在有同名全局变量和局部变量的情形时,可以用(A)提供对全局变量的访问域运算符类运算符重载A)B)C)D)引用.7缺省析构函数的函数体是(C)A)不存在B)随机产生的C)空的D)无法确定的、8 .通常拷贝构造函数的参数表是(C)A)某个对象名B)某个对象的成员名C)某个对象的引用名D)某个对象白指针

3、名.9 .对定义重载函数的下列要求中,(D)是不对的A)要求参数的个数不同B)要求参数中至少有一个类型不同C)要求参数个数相同时,参数类型不同D)要求函数的返回值不同10 .对于多重继承,有(D)A. 一个派生类只能有一个基类B. 一个基类只能产生一个派生类C. 一个基类必须产生多个派生类D.一个派生类可有多个基类.二、简答题:(共8小题,总分:30)1 .C和C+有什么不同?(3分)C是面向过程的语言,C+是面向对象的语言。C源程序文件扩展名为.c,而C+为.cpp。C+可重用性、可扩充性、可维护性、可靠性要强些。2 .面向对象的三个基本特征及各自的作用(4分)封装性:对象将私有元素和实现制

4、作的内部细节的结果隐藏起来,并能管理自己的内部状态。作用:外部只能从对象所表示的具体概念、对象提供的服务和对象提供的外部接口来认识对象。继承:类间具有共享特征,具有新增部分,具有层次结构。作用:避免公用代码的重复开发,减少代码和数据冗余。通过增强一致性来减少模块间的接口和桌面。多态性:类中具有相似功能的不同函数使用同一个名称来实现的现象。实现了动态联编,使程序运行效率更高,更容易维护和制作。.3 .c和C+中的struct有什么不同?(4分)C中定义结构体变量要加struct,而C+不用,如下例:structSTRINGchar*prt;intlength;在C中:在C+中:structSTR

5、INGstr;STRINGstr;4 .cons骑号的作用有哪些?(4分)Const修饰符定义常量。(1)欲阻止一个变量被改变,可以使用const关键字。(2)对指针来说,可以指定指针本身为const,也可以指定指针所指的数据为const,或二者同时指定为const。(3)在一个函数声明中,const可以修饰形参,表明它是一个输入参数,在函数内部不能改变其值。(4)对于类的成员函数,若指定其为const类型,则表明其是一个常函数,不能修改类的成员变量。.5 .引用与指针有什么区别?(3分)引用就是给变量一个别名,使指针运算更加方便。指针是一个实体,而引用仅是个别名。引用只能在定义时被初始化一次

6、,之后不可变。指针可变。引用从一而终”,指针可以见异思迁引用不能为空,指针可以为空。引用是类型安全的,而指针不是(引用比指针多了类型检查)6 .重载(overload)和重写(overried,有的书也叫做覆盖”)的区别?(3分)1、方法的覆盖是子类和父类之间的关系,是垂直关系。方法的重载是同一个类中方法之间的关系,是水平关系。2、覆盖要求参数列表相同。重载要求参数列表不同。3、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定。重载关系,是根据调用时的实参表与形参表来选择方法体的。6.static在类内修饰成员的作用是什么,如何引用这些成员?(4分)表明该成员是静态成

7、员,有点类似于全局变量。可以通过类名::"和对象名.”两种方法来访问。8.虚析构函数的作用是什么?(5分)在于使用delet造算符删除一个对象时,能确保析构函数被正确的执行。三、编程题:(共3小题每小题6分)1.编写一个字符串处理的类,MyString,实现拷贝构造,='号重载等基本函数。#include<iostream>classMyStringchar*str;public:MyString(char*s)str=newcharstrlen(s)+1;strcpy(this->str,s);MyString(constMyString&temp

8、)str=newcharstrlen(temp.str)+1;strcpy(str,temp.str);MyString()deletestr;MyString&operator=(constMyString&temp)deletethis->str;this->str=newcharstrlen(temp.str)+1;if(this->str)strcpy(this->str,temp.str);return*this;3 .使用MyString作为成员对象实现一个Person类,包含:姓名,年龄。#include<iostream>cl

9、assMystringprivate:char*name;public:Mystring(char*s)name=newcharstrlen(s)+1;strcpy(this->name,s);Mystring()deletename;classPersonprivate:intage;Mystringper_name;public:Person(intper_age,char*ps_name):per_name(ps_name).this->age=per_age;Person();4 .实现一个Student类:有姓名,年龄,学号,老师姓名。#include<iostre

10、am>classStudentprivate:char*student_name;intage;intstudent_num;char*teacher_name;public:Student(char*student_name,intage,intstudent_num,char*teacher_name)this->student_name=student_name;this->age=age;this->student_num=student_num;this->teacher_name=teacher_name;Student(constStudent&am

11、p;temp)this->student_name=temp.student_name;this->teacher_name=temp.teacher_name;this->student_num=temp.student_num;this->age=temp.age;Student()deletestudent_name;deleteteacher_name;(答案写到背面,即可)QT部分:一、简答题:1.什么是Qt?Qt能做什么?有哪些优点?(5分)Qt是Trolltech公司的一个产品,是多平台的C+图形用户桌面应用程序框架。Qt能做很多应用软件,如:KDE桌面环

12、境,Goole地图,eva等。Qt的优点:1 .优良的跨平台特性,一劳永逸。2 .面向对象。3 .丰富的API。4 .信号与槽的消息机制。5 .编程语言:C+以及java。6 .支持2D/3D图形渲染,支持OpenGL7 .XML支持8 .国际化,多语言的支持9 .强大的工具,提高了开发的效率和质量。10 .帮助文档assistant11 .4.5之后遵循LGPL协议,我应用完全免费2 .Qt中窗口对象的父子关系如何指定?指定父对象有什么作用及好处?(5分)一般通过构造函数中的“QWidget*parent”参数指定重要作用:父对象show的时候会递归调用其所有子对象,让它们都显示出来。父对象被销毁时会递归销毁其所有的子对象,让内存管理更加简单。3 .Qt中信号和槽

温馨提示

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

评论

0/150

提交评论