ps4神秘海域3图文攻略:学了C++语法后要不要学MFC

来源:百度文库 编辑:中科新闻网 时间:2024/05/01 00:59:52
听二个编程已有5年的同学说,
MFC建议没必要学 MFC自己生成的代码很烂。。 N多内存泄漏。。。 当时为了和Borland竞争,MFC设计得太仓促。架构不好。Window Form应该好很多

如果你要写windows式的程序,例如象IE之类的程序,而且你用MS VC++编译器,你就要学MFC。MFC是windows式程序的基本库。
MFC == Microsoft Foundation Class Library

如果你不用它,那你就要自己开发很多基本的东西啦。
例如,文件选择器,你要画框,要从根目录开始找文件名,文件夹名,揿文件夹名深一层,用鼠标选文件名,文件名多时,用鼠标拉滑块。。。
例如,颜色选择器,你要画框,画色块,用鼠标选颜色。。。
例如,画主窗,画主窗上的图标们,画“文件”"编辑”。。右上角的把窗变小的减号小钮,把窗变大的白钮,关窗的叉钮。。。

那么,你就没时间写你自己的应用程序了。

用vc快速开发就要,你要打算把所有的问题都留给自己解决那就不要!

MFC是对WindowsAPI的封装,大大简化了我们的工作;学VC主要就是要学MFC,大约有100多个类,但常用的也就二三十个。
下面介绍最重要的MFC。

CWnd:窗口,它是大多数“看得见的东西”的父类(Windows里几乎所有看得见的东西都是一个窗口,大窗口里有许多小窗口),比如视图CView、框架窗口CFrameWnd、工具条CToolBar、对话框CDialog、按钮CButton,etc;一个例外是菜单(CMenu)不是从窗口派生的。该类很大,一开始也不必学,知道就行了。

CDocument文档,负责内存数据与磁盘的交互。最重要的是OnOpenDocument(读入),OnSaveDocument(写盘),Serialize(读写)

CView视图,负责内存数据与用户的交互。包括数据的显示、用户操作的响应(如菜单的选取、鼠标的响应)。最重要的是OnDraw(重画窗口),通常用CWnd::Invalidate()来启动它。另外,它通过消息映射表处理菜单、工具条、快捷键和其他用户消息。你自己的许多功能都要加在里面,你打交道最多的就是它。

CDC设备文本。无论是显示器还是打印机,都是画图给用户看。这图就抽象为CDC。CDC与其他GDI(图形设备接口)一起,完成文字和图形、图像的显示工作。把CDC想象成一张纸,每个窗口都有一个CDC相联系,负责画窗口。CDC有个常用子类CClientDC(窗口客户区),画图通常通过CClientDC完成。

CDialog对话框

CWinApp应用程序类。似于C中的main函数,是程序执行的入口和管理者,负责程序建立、消灭,主窗口和文档模板的建立。最常用函数InitInstance():初始化。

CGdiObject及子类,用于向设备文本画图。它们都需要在使用前选进DC。

CPen笔,画线

CBrush刷子,填充

CFont字体,控制文字输出的字体

CBitmap位图

CPalette调色板

CRgn区域,指定一块区域可以用于做特殊处理。

CFile文件。最重要的不外是Open(打开),Read(读入),Write(写)

CString字符串。封装了C中的字符数组,非常实用。

CPoint点,就是(x,y)对

CRect矩形,就是(left,top,right,bottom)

CSize大小,就是(cx,cy)对(宽、高)