gpt4 book ai didi

c++ - 为什么 Netbeans 无法识别 `cbegin()` 、 `cend()` 、 `unordered_set` 以及其他 C++ 功能?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:30:09 24 4
gpt4 key购买 nike

我的 C++ 应用程序在 Netbeans 中按预期编译和运行。但是,代码帮助无法识别诸如 cbegin()cend()unordered_set 之类的术语,如红色下划线所示:

enter image description here

然而,代码帮助确实识别end()。无济于事,我尝试转到项目 -> 属性 -> 代码帮助 -> C++ 标准 -> C++11。我还应该更新或配置哪些内容才能让 Netbeans 代码帮助识别这些术语?

最佳答案

请确保您使用的是 Netbeans 版本 >= 7.2,因为此版本 (see "C/C++") 中引入了 C++11 支持。

如果您已经在 NB 中将 C++ 标准设置为 C++11,您可以重新解析您的项目:

  1. 选择您的 C++ 项目 --> 右键单击​​
  2. 代码协助 -> 重解析项目

编辑:

我在 NetBeans 7.3 RC1(使用 GCC 4.7.2)下使用以下代码测试了这些方法:

#include <iostream>
#include <list>

int main ()
{
std::list<int> mylist = {5,10,15,20};

std::cout << "mylist contains:";

for (auto it = mylist.cbegin(); it != mylist.cend(); ++it)
std::cout << ' ' << *it;

std::cout << '\n';

return 0;
}

将 C++ 标准设置为默认值会失败,但对于 C++11(Project Properties -> Build -> C++ Compiler -> C++ Standard = C++11) 它有效。

关于c++ - 为什么 Netbeans 无法识别 `cbegin()` 、 `cend()` 、 `unordered_set` 以及其他 C++ 功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14675818/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com