1

我正在使用 Netbeans 7.2.1 for Ubuntu Quantal Quetzal 来编程 C++。不幸的是,即使在我将 C++ 版本指定为 C++11 然后重新解析我的代码之后,它的代码帮助也无法识别 C++11 的功能。

我的代码依赖于 C++11 功能,例如unordered_map编译和运行都很好。

因此,我假设我可能不会告诉代码帮助为各种标题寻找正确的目录。因此,我转到工具 -> 选项 -> c/C++ 并在“包含目录”部分添加了更多目录(对于 4.7.2):

在此处输入图像描述

奇怪的是,我刚刚添加的目录旁边是小键。这些小钥匙是什么意思?

仅供参考,代码帮助仍然无法识别 C++11 功能。

4

1 回答 1

1

它们几乎肯定是编译器内置的包含路径。代码助手需要了解它们,否则它将错过理解其他标头和完成所需的重要信息,但由于它们内置于编译器中,用户无法更改它们,因此它们旁边有一个键以显示它们无法更改

然而,这是一个有根据的猜测,基于我在其他C++ IDE 中的工作以及编译器如何处理这些东西的知识

假设您使用的是 gcc,您可以找到内置包含目录的列表echo | g++ -Wp,-v -x c++ - -fsyntax-only并检查它们是否匹配。

于 2013-02-18T05:29:50.367 回答