QT理论试题及答案

更新时间:2024-06-22 10:46:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

QT理论试题

1.以下关于QT的描述正确的是:

a. 是一个不跨平台的C++图形用户界面 b. 由挪威TrollTech公司出品 c. 只支持Unix、Linux

d. QT API和开发工具对所支持的平台是不一致的 2.以下关于QT的描述不正确的是:

a. QT支持2D图形渲染 b. QT支持3D图形渲染 c. QT支持OpenGL d. QT不支持XML 3.下关于不正确的是:

a. 是面向嵌入式系统的Qt版本 b. 是Qt的嵌入式窗口

c. 基于Windows平台的开发工具

d. 是完整的自包含C++ GUI的开发工具 4.内部对字符集的处理采用以下哪个标准:

a. UNICODE b. ASCII c. GB2312 d. ISO 8859-1

5.以下关于Qt描述不正确的是

a. 是基于面向对象的C++语言

b. 提供了signal和slot的对象通信机制 c. 有可查询和可设计属性 d. 没有字符国际化 6.以下描述正确的是:

a. 标准的C++对象模型可有效的支持运行时参数 b. 标准的C++对象模型的静态特性十分灵活 c. 图形用户界面编程无需运行得高效 d. 图形用户界面编程无需运行得高灵活性 7.以下不是QT增加的特性:

a. 有效的对象通信signal和slot b. 可查询和可设计的对象 c. 事件及事件过滤器 d. 不使用指针

8.以下描述正确的是:

a. 元对象系统可以对信号使用模板 b. 元对象系统可以对槽使用模板

c. Qt可在多个平台的应用程序中完全应用模板 d. Qt不能在多个平台的应用程序中完全应用模板 9.以下关于moc叙述正确的是:

a. moc即Mult Object Compiler

b. 可产生能被任何标准C++编译访问的附加C++代码 c. moc必须手动调用

d. 类声明中有无Q_OBJECT无所谓 10.以下关于信号和槽的描述正确的是:

a. 用于SOCKET网络通信 b. 用于UDP网络通信 e. 用于对象间通信 c. 用于串口通信

11.以下关于信号/槽的叙述不正确的是:

a. 信号与槽通过connected函数任意相连 b. 信号/槽机制在QObject类中实现

c. 从QWidget类继承的所有类可以包含信号和槽

d. 当对象状态变化时信号被发送,对象不关心是否有其他对象接收到该信

12.以下类声明中有几处错误? class M : public Qobject { public : M ( ) ; int value ( ) const { return va ; } public slot : void setValue ( int ) ; signals : void valueChanged ( int ) ; private: int va ; };

a. 5 b. 4 c. 3 d. 2

13.设有如下声明 void M : : setValue ( int v ) { if ( v != va ) { va = v ;

emit valueChanged ( v ) ; } }

则对于如下语句 M a , b ; connect ( &a , SIGNAL ( valueChanged ( int ) ) , &b , SLOT ( setValue ( int ) ) ) ; b.setValue ( 11 ) ; a.setValue ( 12 ) ; b.value ( ) ; 执行后,值为: a. 11 11 b. 12 12 c. 11 12 d. 12 11 14.以下关于槽的描述正确的是:

a. 槽具有public和protected 2个类

b. protected slots 表示只有该类的子类的信号才能连接 c. 槽是普通成员函数 d. 不能有private slots

15.以下关于元对象系统不正确的是

a. 元对象系统只是用于处理对象间通信的信号/槽机制 b. 元对象系统可处理运行时的类型信息和动态属性系统 c. 元对象系统基于Qobject类 d. bc都对

16.不是元对象代码实现的特征的是:

a. 提供信号/槽机制

b. Class.forName ( )在运行的时候返回类名称 c. tr ( )用于国际化中的字符串翻译

d. metaObject ( )返回该类所关联的元对象 17.以下关于Q_OBJECT叙述不正确的是:

a. 类定一种声明了Q_OBJECT后,该类才能使用元对象系统相关的特性 b. Q_OBJECT对所有类都无关紧要

c. QObject的子类中未实现信号和槽也可使用Q_OBJECT d. QObject的子类中未实现属性也可使用Q_OBJECT 18.以下关于元对象编译器的叙述不正确的是:

a. 元对象编译器不展开#define ,但可展开#include b. 元对象编译器不展开#include c. 忽略遇到的所有预处理程序 d. 无法处理所有C++语法 19.有如下语句

class YourClass : public Qobject { Q_OBJECT public slots : void apply ( void ( *apply ) ( List * , void * ) , char * ) ; }

以下正确的是

a. 完全正确

b. 可以没有Q_OBJECT

c. slots关键字有误

d. 函数指针不能作为信号和槽的参数 20.如下叙述不正确的是:

a. 不能把继承的成员函数升级为共有状态 b. 宏不能用在信号和槽的参数中 c. 嵌套类不能放在信号部分 d. 嵌套类可以放在槽部分 21.有如下声明:

class Abc : public Qobject { ① Q_OBJECT

② public :

③ Q_PROPERTY(Priority priority READ priority setPriority )

④ Q_ENUMS ( Priority )

enum Priority { High , Low , VeryHigh , VeryLow }; void setPriority ( Priority ) ; Priority priority ( ) const ;

};

关于属性声明的位置以下正确的是:

a. 原位置正确 ① ② ③ ④

b. 原位置不正确,应为 ① ③ ④ ② c. 原位置不正确,应为 ① ③ ② ④ 22.以下关于属性的叙述不正确的是:

a. 基于元对象系统 b. 在类声明中用宏声明 c. 属性不是一个类的成员

d. 属性只能在继承于QObject的子类中声明 23.以下关于QObject类叙述不正确的是:

a. 是所有Qt对象的基类

b. QObject对象树是一个静态的QObjectList类对象object_trees c. object_trees链表中存有部分对象指针

d. 通过object_trees链表可查询到所有的对象 24.以下是事件处理方法的是:

a. 重载QApplication : : notify ( ) b. 重载QObject : : event ( ) c. 重载Qt基类事件处理函数 d. 以上全是

25.以下关于定时器的叙述不正确的是:

a. 多数平台支持2ms精度的定时器 b. 使用定时器,可以用QTimer类

c. 使用定时器,可以用QObject类的定时器 d. 定时器精度依赖于操作系统和硬件

26.以下关于QObject类定时器的叙述正确的是:

WRITE

a. 当处理器正忙于其它事件的处理时,定时器仍可以立即触发 b. 当定时器触发时,应用程序会发送QtimerEvent c. 用startTimer ( )开始一个定时器,如果成功则返回0 d. 用startTimer ( )开始一个定时器,如果失败则返回-1 27.以下是QObject提供的字符串翻译函数的选项是:

a. translateit ( ) , trUtf8 ( ) b. translation ( ) c. tr ( ) , trUtf_8 ( ) d. tr ( ) , trUtf8 ( )

28.以下关于元对象的叙述不正确的是:

a. 每个在类声明中含有Q_OBJECT宏的类都有一个对应的元对象

b. 每个在类声明中含有Q_OBJECT宏的类都有一个对应的QMetaObject类

对象

c. 元对象是动态的

d. 一个类可能含有多个元对象与之对应 29.窗口部件的父类包括:

a. QWidget b. QFrame c. QScrollView d. 以上全是

30.以下关于QWidget类、QFrame类和QScrollView类的关系叙述正确的是:

a. 三个类是兄弟关系

b. 三个类是继承关系:QWidget为祖父,QFrame为父,QScrollView为子 c. 三个类是继承关系:QFrame为祖父,QWidget为父,QScrollView为子 d. 三个类是继承关系:QFrame为祖父,QWidget与QScrollView互为兄弟 31.以下关于Qt风格叙述正确的是:

a. Qt的风格类的基类是QStyle类

b. QStyle的多数成员函数即有声明也有实现

c. 其实现只能在QCommonStyle类中通过重载来完成 d. 其实现只能在QWindowStyle类中通过重载来完成 32.关于布局功能的叙述,以下正确的是:

a. 在布局空间中布置子窗口部件 b. 设置子窗口部件间的空隙

c. 管理在布局空间中布置子窗口部件 d. 以上都对

33.以下关于QLayout的描述不正确的是:

a. 是的布局系统抽象基类

b. 其中,属性int margin代表布局的外边框的宽度

c. 其中,属性int spacing代表布局内的窗口部件的大小 d. 其中,属性ResizeMode resizeMode代表布局的扩展方式 34.布局窗口部件包括:

a. QHBox b. QVBox c. QGrid

d. 以上全有

35.以下叙述不正确的是:

a. QHBox允许子窗口部件按水平、垂直和网格排列 b. QVBox允许子窗口部件按水平、垂直和网格排列 c. QGrid允许子窗口部件按水平、垂直和网格排列 d. 以上全不对

36.以下各项中,是QLayout子类的是:

a. QGridLayout b. QHBoxLayout c. QVBoxLayout d. b和c

37.如果对默认放置位置不满意,则须采取相应的措施,以下哪项不是:a. 创建没有父布局的布局对象

b. 调用addLayout ( )把这个布局插入到其他布局中 c. 没有办法 d. a和b

38.以下关于集合类描述不正确的是:

a. 它是装有多个条目的容器 b. 每个条目是某种数据结构

c. 集合类可对容器中的条目做插入操作 d. 集合类不能对容器中的条目做删除操作 39.以下各项中属于基于值的集合类是:

a. QCache b. QMap c. QPtrList d. QDict

40.以下各项中属于基于指针的集合类的是:

a. QIntCache b. QValueStak c. QValueVector d. QValueList

41.以下各项中既不基于指针也不基于值的是:

a. QIntDict b. QPtrList c. QPtrStack d. QMemArray

42.所有基于指针的集合继承了如下哪个类?

a. QGCache b. QGVector

c. QPtrCollection d. QGList

43.当插入一个条目到一个集合时,如下不正确的是:

a. 仅拷贝指针而不拷贝条目本身的,称“浅拷贝” b. 不允许只拷贝指针而不拷贝条目本身

c. 拷贝所有条目的数组到集合中是可能的 d. 选项C又称“深拷贝”

44.以下各项中不是与Qt线程相关的类的是:

a. QMutex b. QSemaphore c. QThread d. 以上都不是

45.以下关于Qt线程叙述正确的是:

a. Qt中提供了Thread线程类 b. Qt中提供了QThread线程类

c. 通过重载Thread : : run ( ) 函数定义线程的执行内容 d. 通过重载QThread : : _run ( ) 函数定义线程的执行内容 46.有如下关于线程的代码:

class Your_Class : public QThread { public : virtual void run ( ) ; } ;

void Your_Class : run ( ) { for ( int i=0 ; i < 100 ; i++ ) ; }

int main ( ) { Your_Class a ; a . run ( ) ; return 0 ; }

其中有几处错误:

a. 1 b. 2 c. 3 d. 4

47.以下关于线程编程时的注意事项中不正确的是:

a. 在持有Qt库互斥量时必须执行阻塞操作

b. 在调用除了Qt容器和工具类外的任何内容之前,锁定Qt应用程序互斥

c. 只在GUI线程中使用QNetwork类

d. 不要在应用程序中把普通Qt库与支持线程的Qt库混用 48.以下不属于拖放机制的是:

a. 拖动 b. 剪贴板 c. 放下

d. 以上都不是

49.以下关于拖动的叙述错误的是:

a. 在拖动之后,QDragObject被立即删除

b. 拖放明显完成后,这个QDragObject要被保存 c. QDragObject可能要与其他进程通信 d. QDragObject对象最后由Qt删除

50.在一些简单情况下,拖放的目标接收一个被拖动数据的拷贝,并且由源决定是否删除初始的拖动对象,这是QDropEvent中的什么操作?

a. Copy b. Move c. Link

d. 以上都不是

51.Qt/Embedded的开发公司是:

a. Microsoft b. Sun c. Oracle d. Trolltech

52.以下各项中关于焦点定位的习惯方式叙述错误的是:

a. 用户按Tab键 b. 用户按Enter键 c. b选项不是

d. 用户使用鼠标滚轮

53.以下关于Qt/Embedded叙述不正确的是:

a. 是C/S结构

b. 类库完全采用C语言

c. 采用framebuffer作为底层图形接口

d. 将外部输入设备抽象为keyboard和mouse输入事件 54.以下关于字体的叙述正确的是:

a. Qt/Embedded用QFontManager管理字体,与字体相关的类在服务器端运

b. Qt/Embedded用QFontManager管理字体,与字体相关的类在客户端运行 c. Qt/Embedded用FontManager管理字体,与字体相关的类在服务器端运行 d. Qt/Embedded用FontManager管理字体,与字体相关的类在客户端运行 55.以下各项中与显示无关的类是:

a. QScreen b. QLock

c. QWSManager d. QDiskFont

56.以下不是Qt支持的图像格式是:

a. JPG b. PNG c. BMP d. XPM

57.以下叙述正确的是:

a. Qt支持GIF格式图像,且可以存储它们

b. Qt支持GIF格式图像,但不可以存储它们 c. Qt不支持GIF格式图像,但可以存储它们 d. Qt不支持GIF格式图像,且不可以存储它们

58.用QPainter的转换函数对图像做转换后,若要恢复图像的原样,则以下正确的是:

a. 无法实现

b. 可以实现,用QPainter : : resetForm ( ) 只能恢复最近一次的转换 c. 可以实现,用QPainter : : resetForm ( ) 可以撤销所有的转换操作

59.用QPixmap对象打开GIF动画,以下叙述正确的是:

a. 可以看到动画 b. 看不到任何画面

c. 只能看到动画的第一帧 d. 只能看到动画的最后一帧

60.以下关于Qt/Embedded客户端与服务器的描述不正确的是:

a. 客户端可以有多个 b. 服务器可以有多个 c. 客户端只有一个 d. 服务器只有一个

本文来源:https://www.bwwdw.com/article/61d3.html

Top