NetBeans C/C++ Development Pack 5.5 快速入门指南
下面这个简明的教程将为您介绍一些使用 NetBeans IDE 5.5 和 NetBeans C/C++ Development Pack 5.5 开发 C 或 C++ 应用程序的基本步骤。
目录
要求
要开发 C 或 C++ 程序,您必须安装以下软件:
有关下载并安装所需软件的详细信息,请参阅 NetBeans IDE 5.5 安装指南和 NetBeans C/C++ Development Pack 5.5 安装和设置说明。
样例项目
您希望通过一些项目来体验 NetBeans C/C++ Development Pack 5.5 的功能吗?在 IDE 中,选择“文件”>“新建项目”,然后依次打开“样例”类别、"C/C++ Development" 子类别和 C/C++ 子类别。IDE 提供了一些 C 和 C++ 样例项目来帮助您熟悉 IDE。
创建 C 和 C++ 项目
利用 NetBeans C/C++ Development Pack,您可以创建 C 和 C++ 应用程序项目及库项目,同时生成 makefile;您还可以基于现有源代码来创建 C 和 C++ 项目。
对于 C/C++ 应用程序、动态库或静态库项目,IDE 将控制应用程序生成、运行和调试的各个方面。创建项目时,您需要在“项目属性”对话框中设置项目。IDE 将生成一个 makefile,并在其中存储您的所有设置。
创建 C/C++ 应用程序项目
- 选择“文件”>“新建项目”以打开“新建项目”向导。
- 在向导中,选择“C/C++ 开发”类别。
-
向导将为您创建新项目提供四种选项:“基于现有代码的 C/C++ 项目”、“C/C++ 应用程序”、“C/C++ 动态库”和“C/C++ 静态库”。选择“C/C++ 应用程序”,然后单击“下一步”。
-
通过向导并使用缺省设置来创建一个“C/C++ 应用程序”项目。您可以选择项目的名称和位置。
- 单击“完成”退出向导。
我们创建了一个具有四个逻辑文件夹的项目。逻辑文件夹并非真正的目录,它只是一种组织文件的方式,不代表文件在磁盘上的物理存储位置。添加到逻辑文件夹的文件将自动成为项目的一部分,并且在生成项目时进行编译。
添加到“重要文件”文件夹的文件不作为项目的组成部分,并且在生成项目时不进行编译。这些文件只是用于参考,并在您利用现有 makefile 创建项目时提供方便。
在项目的逻辑视图与物理视图之间切换
一个项目同时具有逻辑视图和物理视图。您可以在项目的逻辑视图与物理视图之间进行切换。
-
选择“文件”标签。该窗口展示了项目的物理视图。它原样体现了磁盘上存储的文件和文件夹。
-
选择“项目”标签。该窗口展示了项目的逻辑视图。
在项目中添加文件和文件夹
您可以在项目中添加逻辑文件夹。
-
右键单击应用程序项目的项目节点,选择“新建逻辑文件夹”。一个新的逻辑文件夹将被添加到项目中。
-
右键单击新逻辑文件夹并选择“重命名”。输入新文件夹的名称。
您可以在现有文件夹中添加文件和文件夹。逻辑文件夹是可嵌入的。
在项目中添加新文件
您可以在项目中添加新文件。
- 右键单击“源文件”文件夹,然后选择“新建”>“文件/文件夹”。
-
在“新建文件”对话框的“选择文件类型”页中,依次选择“C 文件”类别和“主 C 文件”文件类型。单击“下一步”。
- 在“名称和位置”页中,为“文件名”字段输入 main。
- 单击“完成”。
根据在向导中指定的目录,将在磁盘上的相应位置创建 main.c 文件,并将其添加到“源文件”文件夹中。您可以在此文件夹中添加任何类型的文件,而不仅仅是源文件。
在项目中添加更多新文件
- 右键单击“头文件”文件夹,然后选择“新建”>“文件/文件夹”。
-
在“新建文件”对话框的“选择文件类型”页中,依次选择“C 文件”类别和“C 头文件”文件类型。单击“下一步”。
- 在“名称和位置”页中,为“文件名”字段输入 file。
- 单击“完成”。
根据在向导中指定的目录,将在磁盘上的相应位置创建文件,并将其添加到“头文件”文件夹中。
在项目中添加现有文件
您可以在项目中添加现有文件。
-
右键单击“源文件”文件夹,然后选择“添加现有项”。您可以通过“选择项”对话框来定位磁盘上的现有文件,并将其添加到项目中。
请不要使用“新建”>“文件/文件夹”来添加现有项,因为“名称和位置”面板会提示您该文件已存在。
设置项目属性
创建项目时,每个项目都具有两项配置:“调试”和“发行”。配置表示项目存储当前设置的方式。使用“调试”配置可以生成包含调试信息的应用程序版本。使用“发行”配置可以生成一个优化的版本。
“项目属性”对话框包含了项目的生成和配置信息。要打开“项目属性”对话框,请执行以下操作:
-
右键单击应用程序的项目节点,然后选择“属性”。
在“项目属性”对话框中,您可以修改编译器的设置和其他配置设置。方法是:选择左侧面板中的某个节点,然后在右侧面板中修改相应的属性。请选择一些节点和属性值,并观察可以设置的属性。您将为当前选择的配置设置属性。
管理配置
在“项目属性”窗口中更改的属性将存储在当前配置的 makefile 中。您可以编辑缺省配置,或者创建新的配置。要创建一个新的配置,请执行以下操作:
-
在“项目属性”对话框中,单击“管理配置”按钮。
-
在“配置”对话框中,选择一个最希望使用的配置。对于本示例,请选择“发行”配置并单击“复制”按钮。然后单击“重命名”。
-
在“重命名”对话框中,将此配置重命名为 "PerformanceRelease"。单击“确定”。
- 在“配置”对话框中,单击“确定”。
-
请注意:在“项目属性”对话框的“配置”下拉列表中,将会选中 "PerformanceRelease" 配置。
-
在左侧面板中,依次展开 "C/C++" 节点和“GNU C 编译器”节点,然后选择“常规”节点。
-
在右侧面板的属性表单中,将“开发模式”由“发行”更改为 "Performance Release"。单击“确定”。
因为您已经创建了一个新的配置,所以该配置将使用一组不同的选项来编译应用程序。
设置源文件的属性
当您设置 C 或 C++ 项目的项目属性时,相关属性将会应用到项目的所有文件中。您也可以为特定的文件设置属性。
-
右键单击 main.c 源文件,然后选择“属性”。对于单个文件,为其设置的编译器配置及属性将覆盖项目编译器的设置和其他属性。您也可以在特定的配置中进行设置以排除生成某些文件。
- 取消“项目属性”对话框。
设置主项目
当您在“项目”窗口中右键单击某个项目节点时,将会显示一个可在此选定项目上执行的各类操作的弹出式菜单。如果您同时打开了多个项目,则弹出式菜单上显示的可执行操作只针对于所选择的项目节点。但是,菜单栏和工具栏又是如何体现与项目相关的操作呢?
在菜单栏和工具栏上,大多数与项目相关的操作都只针对于主项目。主项目节点在“项目”窗口中以粗体显示。
要在 IDE 中更改主项目,请执行以下操作:
-
右键单击某个项目节点,然后选择“设置为主项目”。该项目将成为 IDE 的主项目,并且菜单栏和工具栏中的操作将与其关联。
生成项目
要生成项目,请执行以下操作:
-
选择“生成”>“生成主项目”,则可以生成项目。“输出”窗口将显示与生成有关的输出信息。
-
在主工具栏的配置下拉列表中,将配置由“调试”切换到 "PerformanceRelease"。现在将使用 "PerformanceRelease" 配置来生成项目。
-
选择“生成”>“生成主项目”,即可生成项目。“输出”窗口将显示与生成有关的输出信息。
通过选择“生成”菜单中的相应操作,您可以清理、生成或清理并生成项目。此外,项目还可以根据不同的配置分别保留目标文件和可执行文件,所以您不必担心文件在多个配置中发生混淆。
编译单个文件
要编译单个的源文件,请执行以下操作:
-
右键单击 main.c 文件,然后选择“编译文件”。其结果是仅编译该文件。
请注意:对于根据现有源代码创建的 C/C++ 项目类型,IDE 不支持编译单个文件。
运行项目
args 程序是一个用于输出命令行参数的程序。运行程序之前,让我们在当前配置中设置一些参数,然后再运行程序。
要创建 Args 项目、设置参数并运行项目,请执行以下操作:
- 选择“文件”>“新建项目”。
- 在新建项目向导中,依次展开“样例”类别和“C/C++ 开发”子类别。
- 选择 "C/C++" 子类别,然后选择 Args 项目。单击“下一步”,然后单击“完成”。
- 右键单击 Args 项目节点,然后选择“生成项目”。将生成项目。
- 右键单击 Args 项目节点,然后选择“属性”。
- 在“项目属性”对话框中,选择“运行”节点。
-
在“参数”文本字段中,输入 "1111 2222 3333",然后单击“确定”。
-
选择“运行”>“运行主项目”。将运行应用程序,并在“输出”窗口中显示这些参数。
创建基于现有源代码的 C/C++ 项目
对于一个基于现有源代码的 C/C++ 项目,IDE 将根据现有的 makefile 来确定如何编译和运行应用程序。
创建基于现有源代码的项目
- 通过 http://sourceforge.net/projects/loki-lib 下载 loki-0.1.5 库。
- 将 loki-0.1.5 解压缩到一个目录中。
- 选择“文件”>“新建项目”以打开“新建项目”向导。
- 选择“C/C++ 开发”类别。
- 选择“基于现有代码的 C/C++ 项目”并单击“下一步”。
-
在“Makefile 和生成操作”页中,单击“现有 Makefile”字段旁边的“浏览”按钮。在“选择 Makefile”对话框中,导航至存放 loki-0.1.5 的目录。选择 Makefile,然后单击“选择”。
-
“工作目录”、“生成命令”和“清理命令”文本字段将被自动填充。在“生成结果”字段中,键入 makefile 用来存放库 libloki.a(由 loki-0.1.5 源代码生成)的完整路径。单击“下一步”。
-
在“源文件”页中,将自动列出项目源文件所在文件夹的路径。您可以通过单击“添加文件夹”并使用“选择源文件的文件夹”对话框来指定其他文件夹。
-
在“项目名称和位置”页面的“项目名称”字段中,输入 Loki。对于其他字段,请使用缺省设置。单击“完成”。
将创建项目并在“项目”窗口中打开此项目。这是一个对现有源代码进行了简单包装的项目。
生成和重新生成项目
要生成项目,请执行以下操作:
要重新生成项目,请执行以下操作:
编辑源文件
C/C++ Development Pack 提供了高级的编辑功能,这些功能可以帮助您查看和修改源代码。为了说明这些功能,我们将以 Quote 项目为例。
- 选择“文件”>“新建项目”。
- 在新建项目向导中,依次展开“样例”类别和“C/C++ 开发”子类别。
- 选择“应用程序”子类别,然后选择 Quote 项目。单击“下一步”,然后单击“完成”。
创建断点
您可以随时在代码中创建和处理断点。
创建和删除行断点
-
在 Quote1 项目中,打开 quote.cc 文件。
- 在源代码编辑器中,单击第 197 行 (cout<<"Enter number of CPUs ";) 的左旁注以设置一个行断点。该行将以红色突出显示,以指示在此设置了断点。
- 您可以通过单击左旁注中的图标来删除断点。
- 选择“窗口”>“调试”>“断点”,可以打开“断点”窗口。您会看到窗口中列出了此行断点。
创建函数断点
- 选择“运行”>“新建断点”(Ctrl+Shift+f8) 以打开“新建断点”对话框。
- 在对话框中,请确保将“调试器”下拉列表设置为 "C, C++ Fortran (gdb)"。
-
将“断点类型”下拉列表设置为“函数”。
- 在“函数名称”文本字段中键入函数名称 Customer::DisplayCustomer。单击“确定”。
- 目前已完成函数断点的设置,并且该断点将被添加至“断点”窗口列表。
调试项目
当您启动一个调试会话时,IDE 将启动
gdb 调试器,然后在调试器内运行应用程序。IDE 将自动打开调试器窗口,并将调试器的输出结果显示在“输出”窗口中。
启动调试会话
- 要启动 Quote1 项目的调试会话,请右键单击该项目节点,然后选择“调试项目”。将启动调试器并运行应用程序,同时打开“局部变量”、“监视”和“调用栈”窗口。
- 选择“窗口”>“调试”>“会话”以打开“会话”窗口。将在此窗口中显示调试会话。
检查应用程序的状态
- Quote 应用程序将提示您在外部 I/O 窗口中进行输入。
- 在出现的 "Enter customer name:" 提示后面,输入一个客户名称。
- 应用程序将在您前面设置的函数断点处停止运行。选择“窗口”>“调试”>“断点”以打开“断点”窗口。窗口中列出了您在前面设置的两个断点。函数断点以粗体显示。
- 在 customer.cc 文件中,DisplayCustomer 函数第一行的断点图标上将出现绿色的程序计数器错误。
- 单击“调用栈”标签。调用栈显示了两个框架:对 quote.cc 文件第 86 行上 DisplayCustomer 函数的调用,以及 customer.cc 文件的当前框架。
- 单击工具栏上的“步入”按钮,您会注意到由于存在对 iostream 库的调用而在调用栈中添加了该框架。
- 单击“局部变量”标签,它显示了一个变量。单击展开图标(带有加号的小方块)以展开其结构。
- 单击“继续”按钮。将执行 DisplayCustomer 函数,并将客户信息输出至外部 I/O 窗口,然后提示您输入信息。
- 根据提示,输入响应信息。程序将在前面设置的行断点处停止执行。单击“局部变量”标签,它将显示一个很长的局部变量列表。
- 单击“调用栈”标签,您会注意到调用栈中只剩下一个框架了。
-
单击“继续”按钮并继续根据“外部 I/O”窗口的提示输入响应信息,直至程序执行完毕。当您输入 Q 以退出程序时,外部 I/O 窗口将关闭并结束调试会话。要在程序执行完毕之前结束调试会话,您可以在“会话”标签中右键单击该会话,然后选择“结束”,或者选择“运行”菜单下面的“结束调试器会话”。