天天看点

【MFC】MFC开发之前言

00. 目录

01. mfc概述

02. vc++简介

03. vc++和mfc

04. mfc框架

05. 为什么选择mfc

06. 附录

微软基础类库(英语:microsoft foundation classes,简称mfc)是微软公司提供的一个类库(class libraries),以c++类的形式封装了windows api,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含大量windows句柄封装类和很多windows的内建控件和组件的封装类。

mfc(microsoft foundation classes)是微软基础类库的简称,是微软公司实现的一个c++类库,主要封装了大部分的windows api函数,vc++是微软公司开发的c/c++的集成开发环境,所谓集成开发环境,就是说利用它可以编辑,编译,调试,而不是使用多种工具轮换操作,灵活性较大。vc也指它的内部编译器,集成开发环境必须有一个编译器内核,例如devc++其中一个编译器内核就是gcc。 mfc除了是一个类库以外,还是一个框架,在vc++里新建一个mfc的工程,开发环境会自动帮你产生许多文件,同时它使用了mfcxx.dll。xx是版本,它封装了mfc内核,所以你在你的代码看不到原本的sdk编程中的消息循环等等东西,因为mfc框架帮你封装好了,这样你就可以专心的考虑你程序的逻辑,而不是这些每次编程都要重复的东西,但是由于是通用框架,没有最好的针对性,当然也就丧失了一些灵活性和效率。但是mfc的封装很浅,所以效率上损失不大。

vc++全称是visual c++,是由微软提供的c++开发工具,它与c++的根本区别就在于,c++是语言,而vc++是用c++语言编写程序的工具平台。vc++不仅是一个编译器更是一个集成开发环境,包括编辑器、调试器和编译器等,一般它包含在visual studio中。visual studio包含了vb、vc++、c#等编译环境。当然我们在使用vc++ 6.0的时候为了轻便,总是只单独安装vc++ 6.0。但自微软2002年发布visual studio.net以来,微软建立了在.net框架上的代码托管机制,一个项目可以支持多种语言开发的组件,vc++同样被扩展为支持代码托管机制的开发环境,所以.net framework是必须的,也就不再有vc++的独立安装程序,不过可以在安装visual studio时只选择vc++进行安装。

mfc全称microsoft foundation classes,也就是微软基础类库。它是vc++的核心,是c++与windows api的结合,很彻底的用c++封装了windows sdk(software development kit,软件开发工具包)中的结构和功能,还提供了一个应用程序框架,此应用程序框架为软件开发者完成了一些例行化的工作,比如各种窗口、工具栏、菜单的生成和管理等,不需要开发者再去解决那些很复杂很乏味的难题,比如每个窗口都要使用windows api注册、生成与管理。这样就大大减少了软件开发者的工作量,提高了开发效率。

​ 当然vc++不是只能够创建mfc应用程序,同样也能够进行windows sdk编程,但是那样的话就舍弃了vc++的核心,放弃了vc++最强大的部分。mfc也不是只能用于vc++中,它同样也可以用在borland c++等编译器中。

mfc框架提供了一组旨在简化windows编程的可重用类。

mfc为许多基础对象提供类,例如日常编程中使用的字符string,文件和集合。

它还提供常见的windows api和数据结构的类,如窗口,控件和设备上下文。

该框架还为更高级的功能(如activex和文档视图处理)提供了坚实的基础。

此外,mfc提供了一个应用程序框架,包括构成应用程序体系结构层次的类。

mfc框架是一种强大的方法,可以让您基于windows专家程序员的工作。mfc框架具有以下优点。

缩短开发时间。

它使代码更便于携带。

它还提供了巨大的支持,而不会减少编程自由度和灵活性。

它可以轻松访问“难以编程”的用户界面元素和技术。

mfc通过数据访问对象(dao)和开放数据库连接(odbc)简化数据库编程,并通过windows套接字进行网络编程。

不过对于21世纪的小伙伴,还是建议使用qt等其他工具吧。

继续阅读