2.5 小巧的Dev-C++
Dev-C++是一款遵守GPL ⑤的自由软件⑥。它是一个支持C++和C语言的集成开发环境。Dev-C++自身并不是编译器,它使用GCC作为编译器。目前Dev-C++的最新版本是4.9.9.2。尽管自2005年以来它就停止了更新,但对于初学C++的读者来说还是够用的。
2.5.1 Dev-C++的安装
Dev-C++是免费的,我们可以在它的项目网站(http://sourceforge.net/projects/dev-cpp/files/)和各软件网站下载到。整个安装的过程并不复杂,双击Dev-C++的安装程序即可开始安装。在安装过程中并没有中文提示,所以只能选择语言为英文,如图2.17所示。
在同意了安装协议后,安装向导会要求选择安装组件和文件关联。如果不想默认用Dev-C++打开某些源文件,可以取消文件关联(Associate C and C++ files to Dev-C++及其子项),如图2.18所示。
完成了组件的选择,会提示设定安装位置,如图2.19所示。我们可以直接在文本框中输入路径或者按Browse来选择一个安装位置。
图2.19 设定安装位置
单击Install之后,Dev-C++就会开始安装,安装的过程很快。在完成安装后,单击Finish关闭安装向导并启动Dev-C++,如图2.20所示。
图2.20 安装完成
2.5.2 Dev-C++的配置
完成Dev-C++的安装之后,双击Dev-C++的图标就可以启动程序,如图2.21所示。
图2.21 Dev-C++图标
第一次运行Dev-C++时,会出现一个配置向导,用于设置一些用户习惯和Dev-C++的特性。具体有以下内容。
1.选择语言和外观主题
虽然在安装时没有中文提示,但是Dev-C++在使用时可以是中文界面的。在设置语言的时候选择Chinese,表示选择简体中文。至于外观主题,用户可以根据自己的喜好和习惯,选择合适的外观主题,如图2.22所示。
图2.22 选择语言和外观主题
2.是否启用类浏览器和完成代码清单
Dev-C++的类浏览器(Class Browser)和VC++的Workspace中的Class View类似,可以方便地查找到整个程序中的类、函数和变量等信息,建议启用该功能,如图2.23所示。
图2.23 是否启用类浏览器和完成代码清单
3.是否建立标准头文件缓存
如果选择了启用类浏览器和完成代码清单,那么系统会提示是否建立标准头文件缓存。建立该缓存有助于优化完成代码清单的性能,所以通常选择建立缓存,如图2.24所示。
图2.24 是否建立标准头文件缓存
4.完成设置
单击OK完成第一次运行Dev-C++的设置,并启动Dev-C++,如图2.25所示。
图2.25 完成设置
2.5.3 Dev-C++的使用
在完成了Dev-C++的设置之后,就可以看到它的界面,如图2.26所示。
图2.26 Dev-C++界面
和Visual C++类似,Dev-C++也可以创建工程(Visual C++中的Project,即项目)。工程可以组织和管理一系列的源文件、头文件和资源文件,并可以做某些编译的设置。在Dev-C++中,允许用户编译一个不在工程中的源文件。但是,如果该源文件还和其他源文件有关,就必须将它们放置到工程中。为了保证程序能被很好地管理,建议将程序放置在工程中。
下面演示一下如何新建一个控制台的C++工程。
(1)单击“文件”菜单,选择“新建”,单击“工程…”,弹出“新工程”对话框。
(2)点选“Basic”选项卡,并选择“Console Application”。在名称中填写工程的名称,并选择“C++工程”,最后单击“确定”,如图2.27所示。
图2.27 新工程对话框
(3)此时会跳出一个保存新工程的对话框,如图2.28所示。在Dev-C++中,不会自动新建一个与工程名同名的文件夹。建议大家自己新建一个文件夹,并将工程相关的文件都保存在该文件夹中。
图2.28 保存新工程对话框
(4)保存完工程之后,Dev-C++会自动创建一个main.cpp源文件。该源文件已经包含了主函数的基本框架。我们可以对其略作修改,以实现输出“Hello World”的功能,如图2.29所示。
图2.29 Dev-C++中输入代码
(5)在编写完代码之后,单击工具栏上的编译按钮(或者按Ctrl+F9组合键)进行编译。如果编写的代码还没有保存,则会提示保存源代码。如果编译没有错误,则会出现一个提示状态为Done的对话框,如图2.30所示。
图2.30 编译成功
(6)编译成功后,单击工具栏上的运行按钮(或者按Ctrl+F10组合键)即可运行程序。
小提示
如果直接将原来Visual C++中的代码复制到Dev-C++中运行,会发现程序的运行结果“一闪而过”,根本看不到。这是因为Visual C++会在程序运行结束后提示Press any key to continue,而Dev-C++中没有自带这种提示。为此,可以在return 0;语句之前添加system(“pause”);语句,从而使程序在运行结束后不立刻关闭窗口。