Icefish Corporation
一个系统定义的数据结构,用于临时存储消息。
B、    系统可从消息队列将信息直接发给窗口。另外,每个正在Windows 下运行的应用程序都有自己的消息队列。
C、    系统消息队列中的每个消息最终都要被USER模块传送到应用程 序的消息队列中去。应用程序的消息对列中存储了程序的所有窗口的全 部消息。
D、    以上都正确
10、    一个视图对象能连接(A)文档对象,一个文档对象能连接(    )
视图对象。
A、一个,多个    B、多个,一个
C、一个,一个    D、多个,多个
11、    MFC类库中的类按层次关系可知,CStatic的直接父类为(B )
ACObject BCWnd CCcmdTarget DCFrameWnd
12、    可以利用控件的(C )属性和Tab键顺序来为控件分组。
AID BTab stop CGroup DCaption
13、根据对话框的行为性质,对话框可以分为两类:(B
A、对话框资源和对话框类    B、模式对话框和非模式对话框
C、对话框资源和对话框模板 D、消息对话框和模式对话框 14、以下控件中,(C)没有Caption属性。
D、静态控件
A、按钮 B、组框 C、编辑控件
D、$
BUPDATE
15、    菜单项助记符前用(B )引导。
A、%    B、&    C、#
16、    更新菜单状态的消息是(C )□
AWM_COMMAND 17、关于工具栏、菜单和加速键的关系,正确的说法是(C )。
A、工具按钮与菜单必须一一对应    B、工具按钮与加速键一一对应
C、工具按钮不必与菜单一一对应    D、菜单与加速键一一对应 18、使用GetWindowDC()GetDC()获取的设备上下文在退出时,必须 调用(A )释放设备上下文。
AReleaseDC() Bdelete() CDeleteDC() DDetach()
湖南城市学院
RWindows程序设计考试专业:软件工程、信息管理与信息系统
一、单项选择题(每小题2分,共36分)
1、    对于类中定义的成员,其隐含访问权限为(B )
Aprotected Bprivate C^ public Dstatic
2、    一个类的友元函数金友元类能够通过成员操作符访问该类的(B )
A、私有成员 B、所有成员C、公用成员D、保护成员
3、    下面说法正确的是(A )
A、    构造函数可以重载,析构函数不能重载。
B、    构造函数不能重载,析构函数可以重载。
C、    构造函数可以重载,析构函数也可以重载。
D、    构造函数和析构函数都不可以重载。
4、    类AB的缺省构造函数和析构函数是(A )
AAB()~AB()    BAB(int)~AB()
CAB( )^H~AB(delete )    DAB()int~AB()
5、    在C++中,若对函数未加说明,则函数的隐含类型是(A )
A> int Bdouble Cvoid Dchar
6、    已知类A是类B的友元,类B是类C的友元,贝ij( D )
A、    类A—定是类C的友元
B、    类C 一定是类A的友元
C、    类C的成员函数可以访问类B的对象的任何成员
D、    类A的成员函数可以访问类B的对象的任何成员
7、    下列说法中正确的是(B )
A、    类定义中只能说明函数成员的函数头,不能定义函数体
B、    类中的函数成员可以在类体中定义,也可以在类体之外定义
C、    类中的函数成员在类体之外定义时必须要与类声明在同一文件中
D、    在类体之外定义的函数成员不能操作该类的私有数据成员
8、    以下不属于成员函数的是(B )
A、静态成员函数    B、友元函数
C、构造函数    D、析构函数
9、    对于消息队列的描述正确的是(D )
A、在Windows中只有一个消息系统,即系统消息队列。消息队列是
Icefish Corporation
三 选择填空题(每空1分,共15分)
1、    如果在基类和派生类中都包含其他类的对象(即有对象成员),则在 创建派生类的对象时,首先执行 A 的构造函数,接着执行—C 的构造函数,然后执行—B 的构造函数,最后才执行 D 的构造 函数。
A、基类的对象成员    B、派生类的对象成员
C、    基类    D、派生类
2、    B 代表窗口客户区的显示设备上下文,C代表整个窗口的显示 设备上下文。
ACPaintDC B> CClientDC CCWindowDC DCMetaFeDC
3、    消息循环的处理过程如下:
A 函数不断侦察应用程序的消息队列,若队列为空,该函数 一直运行,不返回;一旦发现队列不为空,便取出一条消息,把它拷贝 到msg结构变量中,同时该函数返回TRUE得到消息msg后,_把 来自键盘的命令翻译成WM_XXX消息命令形式。E 函数通知 Windows把每个消息分发给相应的窗口函数。应用程序并不直接调用窗 口函数,而由Windows根据消息去调用窗口函数,因此,窗口函数经常 被称为回调函数。
AGetMessage() BtranslateMessage() CPostMessage ()
D、    SendMessage ( ) EDispatchMessage()
4、    常用的CButton类的成员函数中:_K_获得一个按钮控件的选中、 选择和聚焦状态;D 得到一个按钮的选中状态; C 设置一个 按钮的选中状态。
AGetState()    BSetState()    CSetCheck()
D^ GetCheck()    E析构方法GetButtonStyle()
5、    滚动条类CScrollBar的成员函数规定了滚动条的操作。设置滚动条的
范围使用    C 函数,设置滚动块的位置使用 E 函数,获
取滚动块的当前位置使用 F 函数。
ASetPos    BSetRange    CSetScrollRange DGetPos
E、    SetScrollPos FGetScrollPos GGetScrollRange
二、填空题(每空1分,共22分)
1、    若for循环的“头”为“for (inti=l i<10 i++)”并且在循环体中 不会修改i的值,则循环体将被重复执行 9 次后结束。
2、    两个函数的函数名—相同但参数的个数或对应参数的类型—不同
    时,则称为重载函数。
3、    C++中函数的参数传递一种是按值传递,另一种是地址传递或弓用 _传递。
4、    C++运行时的多态性通过_虚函数    来实现,而编译时的多态性通
过—函数重载    来实现。
5、    只读成员函数用—const    关键字标识,内联成员函数用    inline   
关键字标识。
6、    class test{
public:
static int x;
};
test tl,t2; tl.x = 25;
程序运行到这里时,t2.x的值为_25_
7、    所有的文档类都派生于_CDocument—,所有的视图类都派生 于:_CView o
8、    为解决多继承中因公共基类而产生的二义性问题,C++语言提供了— 虚基类一机制-将公共基类声明为它以后,它在派生类中只产生一个实例。
9、    在代码中,使用CWnd::_UpdateData()_函数可实现控件与其成员变 量之间的数据的传输。
10、    列表框ClistBox类的成员函数_AddString    用来向列表框增加列
表项,成员函数 ResetContent    用来清除列表项所有项目。
11、    串行化_是指将对象写入永久存储介质或者将对象从永久存储介质 中读出的过程。
12、    Windows程序中的消息有窗口消息、命令消息和一控件通知_消息三 种类型。
13、    MFC中的集合类包括数组列表映射
14、    在进行绘图时,画刷用于指定图形的填充样式,—画笔   
用于指定图形的边框样式。
4(10分)设计一个基于对话框的应用程序,如下图所示。要求:单击 Color按钮,能弹出通用颜对话框选取颜,并用该颜显示:This is a color exampleo
已知:Example 组合框的 ID 为:IDC_DISPLAYo 写出Color按钮的BN_CLICKED消息处理函数。
void CXT6_4Dlg::0nColor()
}

四、程序设计题(19分,218分,共27分)
1、简单的计算程序界面如下图所示,操作数1对应编辑框控件的IDIDC_EDIT1,对应值类型的成员变量m_opl (int)操作数2对应编辑框 控件的IDIDC_EDIT2,对应值类型齢成员变量m_op2 (int);计算结果 对应的编辑框控件的IDIDC_EDIT3,对应值类型的成员变量 m_result(int)o假设输入的数为整数,加法按钮的功能是将两操作数 相加,并将结果在对应的编辑框IDC_EDIT3显示出来。写出加法按钮对 应的代码。
void CExDlg::0nButtonl() {
UpdateData (TRUE); m_result=m_opl_m_op2; UpdateData(FALSE);
}
Icefish Corporation

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。