background image

Visual C++6.0 简介及其优点
VC++是微软公司开发的一个 IDE(集成开发环境),换句话说,就是使用 c++的一个开发平台.有些软件就是这个编
出来的

...另外还有 VB,VF.只是使用不同语言...但是,

vc++是 Windows 平台上的 C++编程环境,学习 VC 要了解很多 Windows 平台的特性并且还要掌握
MFC、ATL、COM 等的知识,难度比较大。Windows 下编程需要了解 Windows 的消息机制以及回调

callback)函数的原理;MFC 是 Win32API 的包装类,需要理解文档视图类的结构,窗口类的结构,消息流

向等等;

COM 是代码共享的二进制标准,需要掌握其基本原理等等。

VC 作为一个主流的开发平台一直深受编程爱好者的喜爱,但是很多人却对它的入门感到难于上青天,究其原因主

 

要是大家对他错误的认识造成的,严格的来说

VC++不是门语言,虽然它和 C++之间有密切的关系,如果形象点比

喻的话,可以

C++

看作为一种 工业标准 ,而

VC++

则是某种操作系统平台下的 厂商标准

, ”

而 厂商标准 是在遵

循 工业标准 的前提下扩展而来的。

VC++应用程序的开发主要有两种模式,一种是 WIN API 方式,另一种则是 MFC 方式,传统的 WIN API 开发方式
比较繁琐,而

MFC 则是对 WIN API 再次封装,所以 MFC 相对于 WIN API 开发更具备效率优势,但为了对

WINDOWS 开发有一个较为全面细致的认识,笔者在这里还是以讲解 WIN API 的相关内容为主线。

要想学习好

VC 必须具备良好的 C/C++的基础,必要的英语阅读能力也是必不可少的,因为大量的技术文档多以英

文形式发布。

vc6.0

 

的优点是界面简洁,占用资源少,操作方便。

1.3 利用 Visual C++/MFC 开发 Windows 程序的优势

MFC 借助 C++的优势为 Windows 开发开辟了一片新天地,同时也借助 ApplicationWizzard 使开发者摆脱离了
那些每次都必写基本代码,借助

ClassWizard 和消息映射使开发者摆脱了定义消息处理时那种混乱和冗长的代

码段。更令人兴奋的是利用

C++的封装功能使开发者摆脱 Windows 中各种句柄的困扰,只需要面对 C++中的对象,

 

这样一来使开发更接近开发语言而远离系统。(但我个人认为了解系统原理对开发很有帮助)

正因为

MFC 是建立在 C++的基础上,所以我强调 C/C++语言基础对开发的重要性。利用 C++的封装性开发者可以

更容易理解和操作各种窗口对象;利用

C++的派生性开发者可以减少开发自定义窗口的时间和创造出可重用的代

码;利用虚拟性可以在必要时更好的控制窗口的活动。而且

C++本身所具备的超越 C 语言的特性都可以使开发者

 

编写出更易用,更灵活的代码。

MFC 中对消息的处理利用了消息映射的方法,该方法的基础是宏定义实现,通过宏定义将消息分派到不同的成

 

员函数进行处理。下面简单讲述一下这种方法的实现方法:

代码如下
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
//{{AFX_MSG_MAP(CMainFrame)

ON_WM_CREATE()

//}}AFX_MSG_MAP

ON_COMMAND(ID_FONT_DROPDOWN, DoNothing)

END_MESSAGE_MAP()
经过编译后,代码被替换为如下形式(这只是作讲解,实际情况比这复杂得多):
//BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)

CMainFrame::newWndProc(...)
{

switch(...)
{

//{{AFX_MSG_MAP(CMainFrame)
//

ON_WM_CREATE()

case(WM_CREATE):

OnCreate(...);

break;
//}}AFX_MSG_MAP