0

谁能告诉我像 NetBeans 或任何类似的 IDE 是如何收集所有标准 C++ 库的?例如,我创建了一个新的 Netbeans C++ 应用程序,并包含了 iostream,它运行没有问题。但是,如果我在我的 MacOSX Snow Leapord 上搜索文件名“iostream”,它会在路径中找到它

/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/IOKit/stream

这是否意味着我的 IDE 正在使用我的操作系统的 C++ 库?这很奇怪,因为所有这些文件都是“版权苹果”——所以我假设这是苹果修改的 C++ 实现?

我的印象是有 1 个标准 C++ 库,所有编译器都使用它。Netbeans 是否只是收集了与 Xcode 捆绑在一起的同一个库?

本质上,我想查看一些 C++ 头文件的来源,以收集有关其内部工作的更多信息,但我担心我正在使用一些超重量级、Apple 修改的核心库,这些库甚至可能不合法使用,因为它在某些 Apple 许可下。

感谢大家

4

2 回答 2

1

NetBeans 只是一个 IDE,它不附带编译器或任何 C++ 库。由于看起来您已经安装了 Xcode,因此 NetBeans 会自动使用与 Xcode 关联的编译器和库。我不知道苹果许可证是什么,但是由于您购买并拥有您的 Mac,我认为使用这些标头没有问题。

此外,要查看标题,只需右键单击代码和Go To->C++ DeclarationHeader Files

于 2012-09-14T03:45:46.617 回答
0

有一个地方你安装了 g++,你的包含文件都来自那里。您可以使用gcc -I开关添加其他头文件,这在 Netbeans 中的构建工具链选项中实现

更多信息在这里

我现在手头没有 mac,但我包含文件将位于以下位置:

/usr/share/g++

编辑:

您可以在以下位置找到代码帮助弹出包含文件:

Tools -> Options -> C/C++ -> Code Assistance

于 2012-09-14T03:46:51.040 回答