第一章VisualC++集成开发环境VisualC++是一个可视化软件开发工具。VisualC++已成为专业程序员进行软件开发的首选工具之一。要使用VisualC++编程,首先要了解它的集成开发环境。VisualC++不仅仅是一个C++编译器,而是一个基于Windows操作系统的可视化集成开发环境IDE(IntegratedDevelopmentEnvironment)。VisualC++由许多组件组成,包括编辑器、编译器、调试器以及程序向导AppWizard、类向导ClassWizard等开发工具。这些组件通过一个名为DeveloperStudio的组件集成为一个和谐的开发环境。1.1VisualC++概述源程序用C++语言编写,支持面向对象设计方法,使用功能强大的微软基础类库MFC(MicrosoftFoundationClass)。开发出来的软件稳定性好、可移植性强。可以编制各种各样Windows应用程序,包括对话框程序、文档/视图程序和组合界面程序。作为VisualStudio可视化组件家族中最重要的一个成员,与其它可视化开发工具如VisualJ++、VisualBasic及VisualC#紧密地集成在一起,适用于特殊、复杂和综合软件项目的开发,乃至一个系统软件的设计。联机帮助系统MSDN(MicrosoftDeveloperNetworkLibrary)功能强大。它既能与集成开发环境有机地结合在一起,使得用户在编程时随机查询需要的内容信息,又能脱离集成开发环境而独立地运行。1.1.1VisualC++的特点1.1.2VisualC++的安装要求CPU为Pentium以上系列,内存为64MB以上,所需硬盘空间约为500M,操作系统为Windows。运行光盘根目录下的Setup.exe程序后,安装向导程序将自动完成VisualC++的安装。安装完毕后,如果要安装MSDN,选择InstallMSDN,插入VisualStudio6.0的MSDN光盘继续进行安装。1.1.3集成开发环境窗口例1-1利用VisualC++6.0创建一个Windows应用程序Mysdi。1.新建MFCAppWizard[exe]项目Mysdi2.设置应用程序的类型为单文档程序,即生成应用程序框架文件。浮动窗口和停靠窗口集成开发环境中的窗口有两种:浮动窗口和停靠窗口。浮动窗口是一般的带边框的子窗口,用它显示源代码或图形。浮动窗口能以平铺方式或层叠方式显示在集成开发环境中,源代码编辑窗口就是一个浮动窗口。除了浮动窗口,集成开发环境中的所有其它窗口都是停靠窗口,如工具栏、菜单栏、Workspace窗口、Output窗口和Debugger调试器窗口(调试时自动打开。1.1.4MSDN帮助系统VisualC++帮助系统包括:有关VisualC++IDE使用说明的联机帮助文件;MSDNLibrary(MicrosoftDeveloperNetworkLibrary)组件。MSDN帮助系统是一个HTML格式的帮助文件,它所包含的内容非常丰富,容量超过1.1GB,包含了有关VisualStudio的编程原理、方法和应用实例等内容。MSDN的启动方法:执行Help|Contents命令或Search工具栏按钮;单击F1键快速获取相关内容的帮助,如在源文件编辑器中用光标把一个需要查询的单词全选上,或单击一条出错提示信息,按F1键出现MSDN的“索引”页面;脱离于VisualC++集成开发环境而独立运行,MSDN是MicrosoftVisualStudio的一个组件,从Windows“开始|程序”菜单中选择MicrosoftDeveloperNetwork菜单中的MSDNLibrary菜单项,就启动了MSDN帮助系统。1.2项目和项目工作区编写一个应用程序首先要创建一个项目(Project),在创建项目的同时创建了项目工作区Workspace。项目工作区记录了一个项目的集成开发环境的设置,如DeveloperStudio最后一次关闭前各窗口的状态。1.2.1项目从软件工程的角度出发,每个程序的开发工作都是一个项目工程,它涉及到计算机和相关专业等领域的知识及其应用。编程时还要使用代码生成、编辑、编译、链接、调试等一系列工具,并且Window可执行程序不是仅由一个源程序文件所生成的,而是由一些相互关联的源文件和资源文件共同生成的。在VisualC++IDE中,把实现程序设计功能的一组相互关联的C++源文件、资源文件以及支撑这些文件的类的集合称为一个项目。VisualC++IDE以项目作为程序开发的基本单位,项目用于管理组成应用程序的所有元素,并由它生成应用程序。项目用项目文件DSP(DeveloperStudioProject)来描述,文件名后缀为.dsp。项目文件保存了项目中所用到的源代码文件和资源文件的信息,如文件名和路径。同时,项目文件还保存了项目的编译设置等信息,如调试版(Debug)或发布版(Release)。一个项目至少包含一个项目文件。根据项目类型的不同,一个项目包含的源文件、资源文件和其它文件也不同。VisualC++IDE以项目工作区的方式来组织应用程序的项目,项目工作区用工作区文件DSW(DeveloperStudioWorkspace)来描述,文件名后缀为.dsw。工作区文件保存了应用程序集成开发环境的项目设置信息,它将一个DSP项目文件与具体的DeveloperStudio结合在一起,在VisusalC++IDE中一般以打开工作区文件DSW的方式来打开指定的项目。创建项目后,可通过项目工作区Workspace窗口来查看项目中的组成元素。Workspace窗口由ClassView、ResourceView和FileView三个页面组成。这些页面按照一定的逻辑关系将一个项目分成几个部分,以树形结构显示项目所创建的类、资源和文件。1.2.2项目工作区1.ClassView类视图2.ResourceView资源视图3.FileView文件视图可通过File菜单和Project菜单中的有关命令添加C++源文件、资源文件和其它文件到项目中,在工作区窗口中将显示被添加的文件与其它文件之间的关系。若要删除项目中的某个文件,选中要删除的文件,然后按Delete键即可。一般使用默认的项目设置生成应用程序的执行代码,也可以改变当前项目的设置。VisusalC++IDE提供了相关的命令来设置项目,如Project菜单中的Settings命令、Build菜单中的Configurations命令和Tool菜单中的Customize、Options命令等。1.2.3项目设置执行Project|Settings菜单命令打开ProjectSettings项目设置对话框:在Debug页面可设置程序执行时的命令行参数;在C/C++页面可优化编译器设置和添加预处理器宏;在Link页面可设置链接器选项。执行Build|Configurations菜单命令可添加或删除项目的版本设置。有多种方法可以改变DeveloperStudio环境,使它适应我们个人的工作方式。执行Tool|Customize菜单命令,在Toolbars页面可设置工具栏选项在Commands页面设置菜单栏选项执行Tool|Options菜单命令可进行编辑器等选项的设置,如设置编辑窗口的字体和颜色。要想了解每一项的具体含义,可先单击该项,然后按F1键即可得到需要的联机帮助信息。1.3编辑器程序代码由操作码和数据组成,除了一般数据,一个Windows应用程序大量使用被称作为资源的数据。VisualC++作为可视化的程序开发工具,提供了功能强大的源代码编辑器和各种类型的资源编辑器。源代码编辑器资源编辑器:菜单编辑器、工具栏编辑器、对话框编辑器、图标编辑器、光标编辑器、位图编辑器、快捷键编辑器、串表编辑器编辑文件的类型:C/C++头文件C++源文件Text文本文件HTML文件1.3.1源代码编辑器方便编程的特色功能:在编辑C++源程序时,在编辑窗口根据C++语法对不同的语句元素以不同的颜色显示,并进行合适长度的自动缩进。自动提示功能。当输入源程序代码时,编辑器会显示对应类的成员函数和变量;当输入函数调用语句时,编辑器会自动提示函数的参数个数和类型;当将光标指向变量、函数或类时,编辑器将给出对应的变量类型、函数声明或类的信息。自动补全单词功能。在输入标识符时右击鼠标,从弹出菜单中选择CompleteWord项可自动补全单词的其余部分。更方便地使用CompleteWord功能:在输入较长的标识符时,为了更方便地使用自动补全单词功能,可为该功能的命令添加一个快捷键。执行菜单命令Tools|Customize|Keyboard,在Category栏选择AllCommands项,在Editor栏选择Text项,Commands框中找到命令项CompleteWord,将光标置于Pressnewshortcut框中,按下需要的快捷键组合,如Alt+Space,最后单击Assign按钮。设置快捷键后,在输入关键字、标识符和变量时,按下Alt+Space就可以自动补全单词的其余部分。1.3.2资源编辑器在Windows环境下,资源是独立于程序源代码的,加上不同资源的不同特点,因此VisualC++提供了不同的可视化资源编辑器和资源属性对话框。使用资源编辑器,可以创建新的资源或编辑已有的资源。当新建或打开一个资源时,系统将自动打开相应的资源编辑器。当新建一个资源时,资源管理器自动给资源分配一个资源标识号ID。图象编辑器由绘图区、Graphics绘图工具箱和Colors调色板组成。当图象编辑器打开后,DeveloperStudio菜单栏上将出现Image主菜单。Graphics工具栏中有画笔、画刷等常用绘图工具,并可输入文本。Colors工具栏供用户选择绘图时所用的颜色。图象编辑器主要用于绘制位图、图标、光标和工具条,在Workspace项目工作区中的ResourceView页面双击这些资源时就会打开对应的图象编辑器,例如,当双击一个Icon图标资源时将打开图标编辑器。1.图象编辑器工具栏一般表示常用菜单命令的快速执行方式,Windows应用程序用一个形象的位图来作为工具栏按钮的外观。工具栏编辑器实际上也是一个图象编辑器,主要用于创建新的工具栏按钮。在项目工作区ResourceView页面打开Toolbar文件夹,双击其中的工具栏资源,出现工具栏编辑器和Graphics工具栏、Colors工具栏,单击最后的空白项可添加一个新的按钮。鼠标按下并拖动某个工具栏按钮,可将该按钮删除。2.工具栏编辑器快捷键是利用键盘输入方式代替执行应用程序的菜单或工具栏命令。快捷键一般是两个键的组合,如Alt+S。利用快捷键编辑器可编辑、添加和删除应用程序项目中的快捷键。在项目工作区ResourceView页面打开Accelerator文件夹,双击其中的快捷键资源出现快捷键编辑器。双击快捷键列表项,打开AccelProperties快捷键属性对话框编辑快捷键。也可单击鼠标右键,在快键菜单中选择Properties命令,进入快捷键属性对话框。要添加快捷键,双击编辑器中快捷键列表底部的空白行,在随后出现的快捷键属性对话框中选择需要添加快捷键的菜单项标识ID,然后设置快捷键和组合键。要删除一个快捷键,单击该快捷键,然后按Delete键。3.快捷键编辑器Windows应用程序运行后,当鼠标指向菜单项和工具栏按钮时,在底部状态栏将显示所指项的有关提示信息,串表就是这样一种资源字符串。利用字符串编辑器可进行串表的编辑、添加和删除等操作。在项目工作区ResourceView页面打开StringTable文件夹,双击串表资源出现串表编辑器。串表编辑器的使用方法与快捷键的使用方法类似。4.串表编辑器在Windows中,版本信息也是作为资源处理。版本信息包括版本号、产品的操