VC++考试试题
- 格式:doc
- 大小:67.50 KB
- 文档页数:23
VC++考试试题VC++复习题选择题1. 下列关键字中哪一个不是用于类的访问控制的(B)A.public B. friend C. private D. protected2. 以下四个特性中哪一个不属于面向对象的三大特性(C)A.封装性 B. 多态性 C. 抽象性 D. 继承性3.管理MFC应用程序(A)A. CWinAPPB. CmainFrameC. CDoucumentD. CView4. 关于构造函数,下列说法不正确的是(A)A. 一个类中有且仅有一个构造函数B. 构造函数在说明类变量时被自动执行C. 构造函数没有返回值类型D. 类中的构造函数的函数名与该类的类名必须同名5.关于析构函数,下列说法不正确的是(C)A. 类中有且仅有一个析构函数B. 析构函数可以没有形参C. 析构函数没有返回值类型D.析构函数在对象消失时被自动执行6. 下列类中不属于MFC框架基本类的时(D)A. CWinAppB. CFrameWndC. CViewD. CObject7. 下列选项中哪一个不是命令消息的产生途径(C)A. 选择菜单B. 单击工具栏C. 点击对话框的按钮D. 程序产生命令8. 下列关于构造函数的描述中,错误的是(D)A. 构造函数可以设置默认参数B. 构造函数在定义类对象时自动执行C. 默认构造函数可以没有D. 构造函数不可以重载9. 当在使用类模板时,类模板本身被实例化成了一个具体的(D)A. 对象B. 实例C. 模板类D. 类10. 以下四个关于类的访问控制的描述哪一个是错误的(D)A. 子类不能访问其父类的私有数据成员和成员函数B. 子类的对象不能访问其父类的保护数据成员或者成员函数C. 类的对象不能访问类保护数据成员或者成员函数D. 类的成员函数不能访问类中的私有数据11.下面有关重载函数中说法正确的(C)A. 重载函数必须有不同的返回值类型B. 重载函数形参个数必须不同C. 重载函数必须有不同的形参列表D. 重载函数名可以不同12.一个视图对象能连接()文档对象,一个文档对象能连接(D)视图对象。
A. 多个,多个B. 多个,一个C. 一个,一个D. 一个,多个13.所有的控件都是(B)类的派生类,都可以作为一个特殊窗口来处理。
A. CviewB. CWndC. CWindowD. Cdialog14、通过调用(B)函数,能够设置本地计算机的时间A. SetSystemtime(···)B. SetLocalTime(···)C. SetSystemTime(···)D.SetLocalime(···)15.关于类,下列说法不正确的是(D)A. 在类中,成员的默认访问特性是私有的B. 类实现了数据的封装C. 类实质上是一种数据类型D. 在类的定义中,必须包含private、public、protected三种访问方式对应的部分16.关于对象,下面说法不正确的是(C)A. 对象是类的一个实例B. 任何一个对象只是属于一个类C. 一个类只能有一个对象D. 类与对象间的关系和数据类型与变量间的关系类似17.关于类的继承,下列说法不正确的(A)A. 派生类中继承的基类成员的访问权限到派生类中保持不变B. 派生类的成员除了它自己的成员外,还包含了它的基类成员C. 派生类至少有一个基类D. 派生类是基类定义的延续18.关于虚函数,下列说法正确的时(B)A. 包含虚函数的类不能够生成实例B. 包含虚函数的类称为抽象类C. 虚函数在基类中说明后,不用再在派生类中重新说明D. 每个派生类必须对从基类继承的虚函数进行重新定义19.友元的作用是(D)A. 增加成员函数的种类B. 增强类的封装性C. 实现数据的隐藏性D. 提高程序的运行效率20、关于函数重载,下列说法不正确的是(C)A. 构造函数重载将会给对象的初始化带来多种方式B. 不要使用重载函数来描述不相干的函数C. 重载函数中不允许使用默认参数D. 重载函数在编译时是根据参数表来进行选择的21.关于动态联编,下列说法不正确的是(B)A. 动态联编是虚函数为基础的B. 动态联编实在编译时确定所调用的函数代码C. 动态联编是在运行时确定所调用的函数代码D. 动态联编调用函数的操作是通过指向对象的指针或对象的引用完成的22.下列输出字符‘&’的方法中,不正确的是(C)A. cout<<'&'B. cout<<put('&')C. Cout.put('&')D. Char c='&';cout<<c 23.下面描述中表达错误的(B)A.公有继承时基类中的public成员在派生类中仍时publicB.公有继承时基类中的private成员在派生类中仍时privateC. 公有继承时基类中的protected成员在派生类中仍时protectedD. 私有继承时基类中的public成员在派生类中是private24.一下时关于鼠标的消息类型,表示按下鼠标左键的时(B)A. WM_MBUTTONDOWNB. WM_LBUTTONDOWNC. WM_LBUTTONBLCLKD. WM_MBUTTONBLCLK25.设置虚基类的目的是(B)A. 简化程序B. 消除二义性C. 提高运行效率D. 减少目标代码26、关键字(C)说明对象或变量初始化后不会被修改A. staticB. publicC. constD. inline27.内联函数执行起来比标准函数(B)A. 更慢B. 更快C. 次数更多D. 以上都不是28. 通常的拷贝构造函数的参数是(C)A. 某个对象名B. 某个对象成员名C. 某个对象的引用D. 某个对象的指针名29.对于动态分配内存空间描述正确的(D)A. 使用new运算符分配的内存空间的长度必须是常量B. delete运算符可以释放动态的存储空间和静态的存储空间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. 构造函数必须制定函数类型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.下列关于虚函数的描述中,正确的是(B)A. 从虚基类继承的函数都是虚函数B. 虚函数不得是静态成员函数C. 只能通过指针或引用调用虚函数D. 抽象类中的成员函数都是虚函数37.在重载一个运算符时,其函数的参数列表中没有任何参数,这说明该运算符是(A)A. 一元成员运算符B. 二元成员运算符C. 一元友元运算符D. 二元友元运算符38、在下列函数原型中,可以作为类A构造函数的是(D)A. void A(int)B. int AC. A(int)constD. A(int)39.有int a=10;int &b=a;a=20;b=10;则cout<<b<<”,”<<a;的输出结果是(D)A. 10,20B. 20,20C. 20,10D. 10,1040.假设一个对象数组为a[N],当释放该数组时,系统自动调用该对象所属类的析构函数次数是(C)A. 1次B. N-1次C. N 次D.不确定41.对于AB类,基于拷贝构造函数的原型(D)A. AB::AB();B. AB::AB(AB);C. AB::AB(AB &);D. AB::AB(const AB&);42.关于内联函数不正确的说法是(D)A. 内联函数定义时加关键字inlineB. 可消除宏定义的不安全性C. 增加了代码长度D. 降低了运行速度43.对于静态数据成员,其初始化一般定义在(C)A. main()函数中B. 类声明中C. main函数之前类声明之后D. 类声明之前,main()函数之后44、以下运算中即可以重载为类的成员函数,又可以重载为类的友元的是(D)A. =B. ()C. [ ]D. ++填空题1.使用VC++的AppWizard创建的典型SDI应用程序的4个MFC基类是:应用程序类、文档类、视图类、框架窗口类2.使用MFC APPwizard产生的应用程序的类型主要包括单文档、多文档和基于对话框的文档。
3、库模块分为静态链接库和动态链接库两类。
4. 面向对象的三大特性是__封装性____,继承性和多态性5.在进行绘图时,画刷用于指定图形的填充样式,画笔用于指定图形的边框样式。
6. 文档序列化主要分为两个部分,它们是读文件和写文件。
7.含有纯虚函数的类称为抽象类。
8、消息和事件是Windows程序设计的核心概念。
9. 类的访问权限有公有,保护和私有3种。
10.类实现了面向对象程序设计的封装特性。
11.一个类和对象的关系,正如基本数据类型与该类型的变量一样,如int x;12. 当在类的外部定义成员函数时,必须在函数名前加上_ 类名和作用域运算符(::)13. 构造函数是在对象被创建是自动执行,对象消失时自动执行的成员函数析构函数。
14.C++提供的多继承机制允许一个派生类继承多个基类,即使这些基类是相互无关的15.友元可以是函数,也可以是其他的类函数。
16. 设a和b是两个整型变量,我们用a+b的形式求这两个变量的和;设c和d为浮点型变量,我们用c+d的形式来求这两个变量的和。
显然运算符“+”具有不同的用途,这是运算符重载的例子17.对话框主要由对话框资源和对话框类组成,对话框可分成模式和无模式2种类型。