VC++考试考试试题.docx

上传人(卖家):刘殿科 文档编号:5841183 上传时间:2023-05-12 格式:DOCX 页数:15 大小:24.21KB
下载 相关 举报
VC++考试考试试题.docx_第1页
第1页 / 共15页
VC++考试考试试题.docx_第2页
第2页 / 共15页
VC++考试考试试题.docx_第3页
第3页 / 共15页
VC++考试考试试题.docx_第4页
第4页 / 共15页
VC++考试考试试题.docx_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、VC+复习题选择题1. 下列关键字中哪一个不是用于类的访问控制的(B)Apublic B. friend C. private D. protected2. 以下四个特性中哪一个不属于面向对象的三大特性(C)A封装性 B. 多态性 C. 抽象性 D. 继承性3.管理MFC应用程序(A) A. CWinAPP B. CmainFrame C. CDoucument D. CView4. 关于构造函数,下列说法不正确的是(A)A. 一个类中有且仅有一个构造函数 B. 构造函数在说明类变量时被自动执行C. 构造函数没有返回值类型 D. 类中的构造函数的函数名与该类的类名必须同名5.关于析构函数,下列

2、说法不正确的是(C)A. 类中有且仅有一个析构函数 B. 析构函数可以没有形参C. 析构函数没有返回值类型 D. 析构函数在对象消失时被自动执行6. 下列类中不属于MFC框架基本类的时(D)A. CWinApp B. CFrameWnd C. CView D. CObject7. 下列选项中哪一个不是命令消息的产生途径(C)A. 选择菜单 B. 单击工具栏 C. 点击对话框的按钮 D. 程序产生命令8. 下列关于构造函数的描述中,错误的是(D)A. 构造函数可以设置默认参数 B. 构造函数在定义类对象时自动执行C. 默认构造函数可以没有 D. 构造函数不可以重载9. 当在使用类模板时,类模板本

3、身被实例化成了一个具体的(D)A. 对象 B. 实例 C. 模板类 D. 类10. 以下四个关于类的访问控制的描述哪一个是错误的(D)A. 子类不能访问其父类的私有数据成员和成员函数B. 子类的对象不能访问其父类的保护数据成员或者成员函数C. 类的对象不能访问类保护数据成员或者成员函数D. 类的成员函数不能访问类中的私有数据11.下面有关重载函数中说法正确的(C)A. 重载函数必须有不同的返回值类型 B. 重载函数形参个数必须不同C. 重载函数必须有不同的形参列表 D. 重载函数名可以不同12.一个视图对象能连接()文档对象,一个文档对象能连接(D)视图对象。A. 多个,多个 B. 多个,一个

4、 C. 一个,一个 D. 一个,多个13.所有的控件都是(B)类的派生类,都可以作为一个特殊窗口来处理。A. Cview B. CWnd C. CWindow D. Cdialog14、通过调用(B)函数,能够设置本地计算机的时间A. SetSystemtime() B. SetLocalTime()C. SetSystemTime() D. SetLocalime()15.关于类,下列说法不正确的是(D)A. 在类中,成员的默认访问特性是私有的B. 类实现了数据的封装 C. 类实质上是一种数据类型D. 在类的定义中,必须包含private、public、protected三种访问方式对应的部

5、分16.关于对象,下面说法不正确的是(C)A. 对象是类的一个实例 B. 任何一个对象只是属于一个类 C. 一个类只能有一个对象 D. 类与对象间的关系和数据类型与变量间的关系类似17.关于类的继承,下列说法不正确的(A)A. 派生类中继承的基类成员的访问权限到派生类中保持不变B. 派生类的成员除了它自己的成员外,还包含了它的基类成员C. 派生类至少有一个基类 D. 派生类是基类定义的延续18.关于虚函数,下列说法正确的时(B)A. 包含虚函数的类不能够生成实例 B. 包含虚函数的类称为抽象类C. 虚函数在基类中说明后,不用再在派生类中重新说明D. 每个派生类必须对从基类继承的虚函数进行重新定

6、义19.友元的作用是(D)A. 增加成员函数的种类 B. 增强类的封装性C. 实现数据的隐藏性 D. 提高程序的运行效率20、关于函数重载,下列说法不正确的是(C)A. 构造函数重载将会给对象的初始化带来多种方式B. 不要使用重载函数来描述不相干的函数C. 重载函数中不允许使用默认参数D. 重载函数在编译时是根据参数表来进行选择的21.关于动态联编,下列说法不正确的是(B)A. 动态联编是虚函数为基础的B. 动态联编实在编译时确定所调用的函数代码C. 动态联编是在运行时确定所调用的函数代码D. 动态联编调用函数的操作是通过指向对象的指针或对象的引用完成的22.下列输出字符&的方法中,不正确的是

7、(C)A. cout& B. coutput(&) C. Cout.put(&) D. Char c=&;coutc23.下面描述中表达错误的(B)A公有继承时基类中的public成员在派生类中仍时publicB公有继承时基类中的private成员在派生类中仍时privateC. 公有继承时基类中的protected成员在派生类中仍时protectedD. 私有继承时基类中的public成员在派生类中是private24.一下时关于鼠标的消息类型,表示按下鼠标左键的时(B)A. WM_MBUTTONDOWN B. WM_LBUTTONDOWNC. WM_LBUTTONBLCLK D. WM_M

8、BUTTONBLCLK25.设置虚基类的目的是(B)A. 简化程序 B. 消除二义性C. 提高运行效率 D. 减少目标代码26、关键字(C)说明对象或变量初始化后不会被修改A. static B. public C. const D. inline27.内联函数执行起来比标准函数(B)A. 更慢 B. 更快 C. 次数更多 D. 以上都不是28. 通常的拷贝构造函数的参数是(C)A. 某个对象名 B. 某个对象成员名 C. 某个对象的引用 D. 某个对象的指针名29.对于动态分配内存空间描述正确的(D)A. 使用new运算符分配的内存空间的长度必须是常量B. delete运算符可以释放动态的存

9、储空间和静态的存储空间C. 由new分配的内存空间是不连续的D. delete运算符只能释放由new分配的动态存储空间30.下列关于成员函数的描述中,不正确的是(B)A. 成员函数可以重载 B. 成员函数一定是内联函数C. 成员函数可以时静态的 D. 成员函数可以设置参数的默认值31.下列关于this指针描述中,正确的是(B)A. 任何与类相关的函数都友this指针 B. 类的成员函数都有this指针C. 类的友元函数都有this指针 D. 类的非静态成员函数才有this指针32、下列关于构造函数的描述中,不正确的是(C)A. 构造函数的函数名与类名相同 B. 构造函数可以重载C. 构造函数必

10、须制定函数类型 D. 构造函数可以设置参数的默认值33.在保护继承中,基类的私有成员变成派生类的(A)A. 不可访问成员 B. 私有成员 C. 保护成员 D. 共有成员34.下列重载为友元函数的运算符函数原型中,不正确的是(C)A. X operator+(X,X); B. X operator -(X); C. X& operator=(X&,X); D. X& operator +=(X&,X);35.运行时的多态性指(B)A. 用指向对象的基类指针或引用一个纯虚函数B. 用指向对象的基类指针或引用一个虚函数C. 以任何方式调用一个纯虚函数 D. 以任何方式调用一个虚函数36.下列关于虚函

11、数的描述中,正确的是(B)A. 从虚基类继承的函数都是虚函数 B. 虚函数不得是静态成员函数C. 只能通过指针或引用调用虚函数 D. 抽象类中的成员函数都是虚函数37.在重载一个运算符时,其函数的参数列表中没有任何参数,这说明该运算符是(A) A. 一元成员运算符 B. 二元成员运算符 C. 一元友元运算符 D. 二元友元运算符38、在下列函数原型中,可以作为类A构造函数的是(D)A. void A(int) B. int AC. A(int)const D. A(int)39.有int a=10;int &b=a;a=20;b=10;则coutb”,”a表示从键盘上读入一个 字符串 到数组a

12、中。26.若希望用一个已有对象来构造另一个同类型的对象,可以使用 拷贝构造函数 来实现。27.重载运算符的含义必须清楚,不能有 二义性 。28.C+的I/O是以 字符流 的形式实现的,每个编译系统都带有一个面向对象的输入输出软件包,这就是 I/O流类库 . 简答题1一个windows下的应用程序具有哪些特点? 答:消息驱动机制;图形设备接口(GDI);基于资源的程序设计;动态链接库;进程和线程。2.什么是消息映射?消息映射与消息处理函数间的关系是什么?答:消息映射就是将消息或命令发送到程序员为处理消息所编写的函数中,使其对消息进行处理。消息处理函数指的是与某个消息对应的函数。消息处理函数的执行

13、是由其对应的消息引发的,某个类对象中的消息处理函数是与这个类对象能够得到的一个消息对应的,当这个消息发生时,这个函数就会被执行。3.Windows程序的入口点是什么函数?它主要完成什么功能? 答:入口点是WinMain函数。完成的功能是创建、注册和显示窗口等一些初始化工作,启动消息循环完成消息驱动。4.什么是文档?什么是视图?答:文档:能够交流的,便于理解的结构化、规范化的信息。(或:描述软件开发过程和使用方法的信息)视图:一个视图是一个没有边框的窗口,它在文档和用户之间起中介作用,只负责实现和修改文档数据,不负责存储。5.简述文档类与视图类的相互关系。答:每一个文档可以有多个视图,但每个视图

14、只能对应一个确定的文档。6.文档类在文档视图结构中主要完成哪些任务?答:文档的任务是对数据进行管理和维护,在VC+中,文档类通过一个成为串行化(Serialize)的过程将数据保存到磁盘文件或数据库中,另外,它还可以处理命令消息。7.模式对话框和无模式对话框的区别?P175答:模式对话框是指当对话框被弹出,用户必须在对话框中作出相应的操作,在退出对话框之前,对话框所在的应用程序的其他操作不能继续执行。无模式对话框是指当对话框被弹出后,一直保留在屏幕上,用户可继续在对话框所在的应用程序中进行其他操作;当需要使用对话框时,只需像激活一般窗口一样单击对话框所在的区域即可激活。8.什么是消息?Wind

15、ows应用程序有哪几种消息?各自有什么特点?P157答:消息用于描述某个事件发生的信息。有以下三种消息及特点:窗口消息(Windows message),主要指由WM开头的消息(WM_COMMAND除外),一般由窗口类和视图类对象来处理;控件的通知消息(Control notifications),当控件状态发生改变(例如用户在控件中进行输入)时,控件就会向其父窗口发送WM_COMMAND通知消息;命令消息(Command message),主要包括由用户交互对象(菜单、工具条的按钮、快捷键等)发送的WM_COMMAND通知消息。9.文档模板的作用?如何创建一个单文档模板?P250P251答:

16、用MFC AppWizard创建的单文档(SDI)和多文档(MDI)应用程序均应包含应用程序类、文档类、视图类和框架窗口类,这些类是通过文档模板有机的联系在一起的。新建文档模板:pDocTemplate=new CMultiDocTemplate( IDR_EX_MDITYPE, /资源ID RUNTIME_CLASS(CEx_MDIDoc), /文档类 RUNTIME_CLASS(CChildFrame), /MDI文档窗口类 RUNTIME_CLASS(CEx_MDIView); /视图类 AddDocTemplate(pDocTemplate);10.什么叫文档序列化?P256答:将文档

17、类中的数据成员变量的值保存在磁盘文件中,或者将存储的文档文件中的数据读取到相应的成员变量中,这个过程称为文档序列化(Serialize)。11.什么是设备坐标?什么是逻辑坐标?设备坐标系中有哪几种坐标系?设备坐标系:是面向打印机或显示器等物理设备的坐标,以像素点或设备所能表示的最小长度为单位:X轴的正方向从左到右,Y轴的正方向从上到下。逻辑坐标系:是面向设备环境的坐标系,这种坐标不考虑具体的设备类型,而在实际绘图时,windows会根据当前设置的映射模式,将逻辑坐标系转换为设备坐标。设备坐标系中有:屏幕坐标系、窗口坐标系和客户区坐标系3种。程序阅读题:1. for循环语句。void fun(i

18、nt &);void main() for(int i=0;i10;i+) fun(i); Couti” Coutendl;void fun(int &n)n+;2. 看程序写结果(1):#includeclass A public: A(int i,int j)a=i;b=j; void move(int x,int y) a+=x;b+=y; void show()cout”(”a”,”b”)”endl; private: int a,b;class B:private A public: B(int i;int j;int k;int l):A(i,j)x=k;y=l; void sho

19、w()coutx”,”yendl; void fun()move(3,6); void f1()A:show(); private: int x,y;void main() A e(1,2); e.show(); B d(5,6,7,8); d.fun(); d.show(); d.f1();输出结果为:(1,2) 7,8 (8,12)3. 看程序写结果(2):#includeclass A int a,b; public: A(int x,int y)a=x;b=y; virtul void disp() cout?“*A*”endl?; couta”bendl;class B:public

20、 A int c; public: B(int xint y,int z)?:A(x,y)c=z?;void disp() cout?”*B*”endl?; cout”c=”cdisp()?; p=&obj2?; p-disp()?;输出结果为:*A* 60,60 *B* C=404.看程序写结果(3):#includeclass A int a; public: A(int aa=0)a=aa; A()cout”Destructor A!”aendl;class B int b; public: B(int aa=0;int bb=0):A(aa)b=bb;B()cout”Destructo

21、r B!”bendl;void main() B x(6),y(7,8)?; /后定义的变量将先被释放输出结果如下:Destructor B!8 Destructor A!7 Destructor B!0 Destructor A!65.看程序写结果(4):#includeclass A public: A(); A(int i,int j); A()cout”Donstructor.n”; void print(); ptivate: int a,b;A?:A()a=b=10; Cout”Default constructor:n;”A?:A(int i,int j)a=i;b=j; cout”Constructor.n”;void A:print()cout”a=”a”,b=”bendl;void main() A m,n(15,18); m.print(); n.print();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 待归类文档
版权提示 | 免责声明

1,本文(VC++考试考试试题.docx)为本站会员(刘殿科)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|