带您探秘Visual C++ 6.0特性

相信很多使用Visual Studio作为开发工具的Visual C++程序员都会怀恋使用Visual C++ 6.0的日子。Visual C++ 6.0配合着Visual Assist这个辅助工具,成为C++程序员们开发工具的不二之选。

随着Visual Studio版本的升级,IDE引入了一些新的特性,但是却使得整个IDE非常臃肿,效率低下。现在,Visual Studio 2010在IDE的效率方面做了很多工作,以提高我们的开发效率:

头文件编辑
在以往的Visual Studio中,如果我们编辑一个被多处源文件引用的头文件,Visual Studio将不得不打断你的工作,因为它要很长的时间重新处理整个项目。现在,在新的Visual Studio 2010中,当我们编辑头文件后,我们可以继续工作,而Visual Studio会在后台进行新的头文件的处理,同时IntelliSense也将很快更新,反应出我们对头文件的修改。

改变项目配置
跟头文件编辑相似,在以往的Visual Studio中,当我们改变了项目的配置后,Visual Studio会打断我们的工作去处理项目配置的改变。例如,当我们将当前的项目配置从Debug切换到Release后,Visual Studio会花很长一段时间去处理项目配置的改变。

而在这段时间内,Visual Studio就像死掉一样,我们什么都不能做,只能傻等着。(我曾经无奈地把它当做Visual Studio的一个人性化设计,故意让我们这些久坐的程序员在等待的时候起来走走,舒活一下筋骨。)在新的Visual Studio 2010中,修改项目配置后我们无需再等待就可以继续工作。

配置项目的物理分布
你的项目是否非常庞大,包含很多源文件?如果是这样的话,在以往的Visual Studio 中,当它处理项目的所有文件时,将显得非常缓慢。为了解决这个文件,我们往往不得不将一个项目拆分成多个项目,这样每个项目中的源文件就会少很多。

Visual Studio每次处理的文件数少一些,就会显得快一点。在新的Visual Studio中,它提高了处理源文件的效率,即使你的项目有很多源文件,Visual Studio在处理这些文件的时候,仍然可以保持活动而不会出现“假死”的现象。这个特性可以使得我们将原来需要分布在多个项目中的源文件,根据需要重新配置,使得项目的物理分布更加合理。

更加聪明的IntelliSense
C++作为最复杂的编程语言,其IntelliSense一直是Visual Studio的一个难点。在以往的Visual Studio中,C++的IntelliSense是基于编译器的,它可以理解复杂的C++代码。但是,对于一些比较高级的Visual C++ 6.0

特别是跟宏相关的一些内容,IntelliSense就显得无能为力了。在新的Visual Studio中,改进的IntelliSense显得更加聪明,几乎可以理解任何复杂形式的C++代码。有了新的IntelliSense,估计很多程序员所钟爱的Visual Assist会受到冷遇了。

增强的MFC
虽然大家都在说MFC过时了,但是,现在世界上还有很多MFC正在运行,也同样还有很多基于MFC的程序正在开发中。我们可以说随着.NET Framework等等新框架的推出,MFC不再是几乎唯一的选择。

但是,随着Visual C++ Feature Pack的推出,MFC在界面开发方面的能力等到了大大增强,MFC也在与时俱进,远没有到过时淘汰的程度。在Visual Studio 2010中,除了之前随着Visual C++ Feature Pack发布的众多特性外,MFC又带来了两项重要的特性:

任务对话框CTaskDialog
为了改善用户体验,在Vista中,微软使用任务对话框(Task Dialog)代替了原先广泛使用的消息框(Message Box)。跟消息框相比,任务对话框不仅可以向用户显示消息,还可以显示自定义的按钮,命令行选项以及更加丰富的辅助信息等。

新的CTaskDialog类提供了很多简单实用的函数,程序员们可以轻松上手,使用任务对话框来改善应用程序的用户体验,使自己的应用程序的界面风格跟Vista系统保持一致。下面这段简短的代码就创建了一个简单的任务对话框,来询问用户对任务对话框的态度。

Restart Manager Support
在新的Vista Studio 2010中,MFC程序开始支持重启管理器(Restart Manager)。重启管理器是Vista所引入的一个重要新特性,它可以在程序意外崩溃的时候,保护用户任何未保存的文档数据等。

当我们的程序因为种种原因意外崩溃的时候,重启管理器可以重新启动应用程序并且可以让用户选择是否要恢复未保存的数据等。使用重启管理器,可以有效地降低我们数据丢失的风险,极大地改善程序的抗风险能力。在Visual C++ 6.0中,我们可以通过简单地在程序初始化的地方添加几行代码,就使得我们的应用程序具有重启管理器的功能。

Visual C++程序的发布与部署
新的Visual Studio 2010改变了依赖于C++代码的应用程序的发布方式。依赖于Visual C++库的应用程序不再需要Fusion (WinSxS) Manifest,这意味着当我们将应用程序部署到一个本地文件夹时,将不再需要众多的小Manifest。

相关推荐