当前位置:首页 >> 其它课程 >>

vc++复习重点总结


一、填空题 1) 在 vc++中要进行 Dos 程序的编制,应选择 Win32 Console Application 工程。 2) vc++的工作区存在的三个页面分别是:FileView 页面,ClassView 页面和 Resource View 页面。 3) 用 C 语言进行的 Windows 程序设计又叫 API 程序设计,其中 API 的含义是应用程序接口。 4) vc

++程序设计所使用的类库是 MFC。 5) 支持 vc++可视化编程的两大工具是 AppWizard 和 ClassWizard。 6) C++的输入/输出流类库是<iostream.h>。 7) C++采用 new 运算符进行内存动态分配,使用 delete 运算符实现内存动态撤销。 8) C++的类中的数据成员一般定义为私有的,而成员函数一般定义为公有的,一般通过公有函数访问其 私有的数据成员。 9) 类的三大特性是:封装性,继承性和多态性。 10) 类的多态性是通过虚拟函数实现的。 11) 类在生成对象时会自动调用构造函数,在对象销毁时会自动调用析构函数。 12) 构造函数和析构函数中,构造函数可以重载。 13) 类的三种派生方式是公有派生,私有派生和保护派生。 14) 基类的私有成员以 public 派生方式派生到派生类中是不可见的。 15) 基类的保护成员以 public 派生方式派生到派生类中是保护成员。 16) 如果基类有构造函数,则在生成派生类对象时先调用基类的构造函数。 17) 虚拟函数与函数重载的区别是:函数重载是指函数名相同,在函数调用时,根据函数参数类型或 个数的不同而调用正确的函数版本。而虚拟函数是指基类中存在,在派生类中进行重定义的函数,无 论是函数名还是函数的返回值及函数的参数都完全相同。 18) Windows 程序设计是消息驱动的程序设计方法。 19) 消息结构体中的三个数据成员 message,wParam 和 lParam 分别代表消息标识符,消息附加参数, 消息附加参数。 20) 几乎所有的 MFC 类都是从 CObject 类派生的。 21) 简单应用程序框架由 CWinApp 类和 CFrameWnd 类搭建。 22) 文档/视图的应用程序框架由 CWinApp 类,CFrameWnd 类,CDocument 类,CView 类和 CDocTemplate 类搭建。 23) 一般用 CFileDialog 类和 CFile 类配合完成文件的读写,其中真正实现文件读写的类是 CFile 类。 24) 设 有 消 息 1 , 用 MFC 的 方 式 处 理 此 消 息 , 设 其 处 理 函 数 为 函 数 1 , 完 成 其 消 息 映 射 为 ON_MESSAGE(消息 1,函数 1)。 25) 消息 WM_LBUTTONDOWN 的缺省消息映射是 ON_WM_LBUTTONDOWN(),其缺省的消息处 理函数是 OnLButtonDown(UINT nFlags,CPoint point)。 26) vc++中用于输出文本和绘制图形的类是 CDC 类。 27) CPen 类,CBrush 类和 CFont 类的共同基类是 CGdiObject 类。 28) 定时器会发出 WM_TIMER 消息,设置定时器的函数是 SetTimer()函数。 29) 资源描述文件的后缀是.rc,随资源描述文件自动生成的文件是 resource.h 文件。 30) 单击菜单项会发出 WM_COMMAND 消息,设某菜单项的 ID 是 ID1,其处理函数设为函数 1,则 其消息映射应该为 ON_COMMAND(ID1,函数 1)。 31) 对 话 框 类 用 DoModal() 函 数 显 示 对 话 框 , 这 一 函 数 的 两 个 可 能 的 返 回 值 分 别 为 IDOK 和 IDCANCEL。 32) 设对话框中某个按钮控件的 ID 为 IDC_BUTTON1, 其处理函数为函数 1, 写出单击此按钮的消息 映射为 ON_BN_CLICKED(IDC_BUTTON1,函数 1), 单击此按钮发出的消息为 WM_COMMAND 消息。 33) Windows 所有公用对话框的基类是 CCommonDialog 类。

34) CFileDialog 类用 GetPathName()函数获取用户所选择的全文件名。 35) 单文档/视图结构中,主框架窗口类由 CFrameWnd 类来管理,客户区窗口由 CView 类来管理,程 序的数据一般由 CDocument 类来管理。 36) 文档/视图结构中,视图通过 GetDocument()函数获取文档的数据,而数据的集中展示靠 OnDraw() 函数来实现。 37) 文档/视图结构中,文档数据和磁盘数据进行交互的函数是 Serialize()函数。 38) 多文档/视图结构比单文档视图结构多了一个子框架窗口类,它是由 CMDIChildWnd 类派生的, 其主框架窗口类是由 CMDIFrameWnd 类派生的。 39) 多文档/视图结构中,子框架窗口参与了文档/视图结构,视图位于子框架窗口内。 40) 文档/视图结构中单击 “保存” 菜单项, 其缺省的处理函数是 CDocument 基类的 OnFileSave()函数。 41) 设编辑控件的 ID 为 IDC_EDIT1,用 GetDlgItem 函数实现控件与其支持类连接的方法是:CEdit *pEdit; pEdit=(CEdit*)GetDlgItem(IDC_EDIT1);用 DDX_Control 方法实现控件与支持类 CEdit 类的 对象 m_edit 连接的方法是 DDX_Control(pDX, IDC_EDIT2, m_edit), 这一语句将位于 DoDataExchange() 函数中。 42) 设 编 辑 控 件 的 ID 为 IDC_EDIT1 , 与 其 进 行 数 据 交 换 的 变 量 为 int r , 则 其 交 换 语 句 为 DDX_Text(pDX, IDC_EDIT1, r); 决定其数据交换方向的是 pDX;当初始化对话框时其数据交换的方 向是从 r 到 IDC_EDIT1,当单击“确定”按钮关闭对话框时,其数据交换的方向是从 IDC_EDIT1 到 r。 二、编程和思考题 1) 用函数实现两个数的交换,条件是使用引用函数参数。 #include <iostream.h> void swap(int &p1,int &p2) { int t; t=p1; p1=p2; p2=t; } void main() { int x=3,y=4; swap(x,y); cout<<"x="<<x<<endl; cout<<"y="<<y<<endl; } 2) 如下所示有基类 student 和派生类 stud,写出派生类的构造函数。 #include <iostream.h> #include <string.h> class student { protected: int num; char name[10]; char sex; public:

student(int n,char*na,char s) { num=n; strcpy(name,na); sex=s; } }; class stud:public student { private: int age; public: stud(int n,char*na,char s,int a) { num=n; 正确写法 strcpy(name,na); sex=s; age=a; } stud(int n,char*na,char s,int a):student(n,na,s) { age=a; }

}; 3) 用框架图说明 Windows 程序的执行思路和 Windows API 程序设计中 WinMain()函数和 WndProc()函 数的作用。
程序开始执行 WinMain() 函 数 负 程序打开窗口 责 WndProc() 函 数 负 责

检测发向窗口的消息

WM_QUIT



应用程序 处理消息



处理消息

是 否
程序结束,关闭窗口 windows 默认处理

4)用框架图说明 MFC 和 API 处理 Windows 消息的方法。

API 的消息处理方法 switch(message) //先判断消息标识符 { case WM_*:

MFC 的消息处理方法

映射

处理函数一

处理方法;break;

case

WM_**:

映射

处理函数二

处理方法;break;

case

WM_***:

映射

处理函数三

switch(wParam) //再判断消息的附加参数 { case*:……break; case**:……break; }

5)试说明函数 Invalidate()的作用。 Invalidate() 函 数 的 调 用 发 出 WM_PAINT 消 息 , 这 一 消 息 将 引 发 OnPaint() 函 数 的 调 用 , 基 类 (CFrameWnd 类)的 OnPaint()函数将调用 OnDraw()函数,如果派生类中没有重写基类的虚拟函数 OnDraw(),则调用的是基类的 OnDraw()函数,基类的 OnDraw()函数承担了重新绘制窗口,清除原有窗口 内容的功能。 6)如何获取环境中正在使用的字体信息。 先定义一个字体信息结构体 TEXTMETRIC tm,然后调用 CDC 类的 GetTextMetrics()函数把环境中正在使 用的字体信息放到 tm 中,如 GetTextMetrics(&tm)。 7)设设计的对话框模板的 ID 号是 IDD_DIALOG1,从 CDialog 类派生自己的对话框类,并在构造器中实 现模板与对话框类的连接。 class CMyDialog:public CDialog { public: enum{IDD=IDD_DIALOG1}; CMyDialog(CWnd*p=NULL):CDialog(CMyDialog::IDD,p){} }; 8)设有一单文档应用程序框架,CMyApp 类是 CWinApp 类的派生类,CMainWnd 类是 CFrameWnd 类的 派生类,CMyDoc 类是 CDocument 类的派生类,CMyView 类是 CView 类的派生类,资源的标识是 IDR_MENU1。写出单文档模板类如何在 CMyApp 类的 InitInstance()函数中实现资源,文档,视图和框架 窗口的藕合。 BOOL CMyApp::InitInstance() { CSingleDocTemplate *p;// CSingleDocTemplate 表示单文档模板类 p=new CSingleDocTemplate

(IDR_MENU1,RUNTIME_CLASS(CMyDoc), RUNTIME_CLASS(CMainWnd), RUNTIME_CLASS(CMyView)) } 9)简述文档/视图结构中单击“新建”菜单建立一个新文档时的函数执行流程。
新建(ID_FILE_NEW)

CWinApp::OnFileNew() 在此设新文档的数 据 CView::OnInitialUpdate()

CMyDoc::OnNewDocument()

CView::OnUpdate() OnDraw() 函 数 通 过 CMyView::OnDraw() GetDocument()函数获得文 档的数据

10)写出对话框中构造器函数,OnInitDialog()函数和 DoDataExchange()函数的执行顺序。
CMyDialog::CMyDialog(CWnd* pParent /*=NULL*/) CMyDialog mydialog; mydialog.DoModal(); :CDialog(CMyDialog::IDD, pParent) { }//构造器函数

对话框显示之前发出 WM_INITDIALOG 消息

BOOL CMyDialog::OnInitDialog() { CDialog::OnInitDialog(); pEdit=(CEdit*)GetDlgItem(I DC_EDIT1); return TRUE; }

void CMyDialog::DoDataExchange(CData Exchange* pDX) {CDialog::DoDataExchange(pDX); DDX_Control(pDX,IDC_EDIT2, m_edit2); }


相关文章:
vc++复习重点总结
vc++复习重点总结_其它课程_高中教育_教育专区。一、填空题 1) 在 vc++中要进行 Dos 程序的编制,应选择 Win32 Console Application 工程。 2) vc++的工作区...
VC++总复习资料
VC++总复习资料_高考_高中教育_教育专区。VC++总复习资料一、 知识点 1、 类和对象的概念。要求能够具体识别代码中的类和对象。 2、 C++程序设计语言的三个特...
VC++复习提要和重点
VC重点 12页 1财富值 VC++重点 3页 免费 VC++考试重点 6页 1财富值 VC重点学习 4页 免费 vc++学习重点 10页 2财富值 VC重点总结 8页 20财富值 【重...
C++复习知识点
数据类型: 构造数据类型 (3.1)整型 )整型(int):以补码形式存储,在 VC 中...数组作为函数的参数小结: 数组作为函数的参数小结: 可以将数组元素传递给函数, ...
VC++总复习题带答案
VC++总复习题带答案_工学_高等教育_教育专区。复习题一、单选题 1、以下选项中不能用做用户自定义标识符的是( )。C A. length_ B. _length C. length....
VC复习资料
VC复习资料 VC复习试题VC复习试题隐藏>> Valiant 整理 盗用必究 名词解释 1.风险...以上六种退出方式按实质可归纳 为三种:1.首次公开发行:企业以融资为目的,首次...
VC++期末复习题库
VC++期末复习题库_从业资格考试_资格考试/认证_教育专区。押题、考试重点 VC++过程测试 1 1. 下面说法正确的是(A) A. 构造函数可以重载,析构函数不能重载。...
VC_复习题+答案
VC_复习题+答案_从业资格考试_资格考试/认证_教育专区。C++复习VC 程序设计》试卷 1 一、单项选择题(每小题 1 分,共 20 分) 1、假定 MyClass 为一个...
vc++复习题答案
vc++复习题答案_计算机硬件及网络_IT/计算机_专业资料。一、 名词 1.面向对象...3.类与类库:类(class)是对一组性质相近的客观对象的抽象归纳,它将对象的共性...
vc++复习题
vc++复习题_IT认证_资格考试/认证_教育专区。一、选择题 A 2、VC 中存在几...6.MFC 的基本类有哪些?(请大家自己对照教材总结) CCmdTarget 用于处理用户请求...
更多相关标签: