Linux上NetBeans的代码协助
-
23-10-2019 - |
题
我的IDE(NetBeans)认为这是错误的代码,但正确编译了:
std::cout << "i = " << i << std::endl;
std::cout << add(5, 7) << std::endl;
std::string test = "Boe";
std::cout << test << std::endl;
它总是说 unable to resolve identifier .... (.... = cout, endl, string);
因此,我认为这与代码帮助有关。我想我必须更改/添加/删除一些文件夹。目前,我有这些文件夹:
C编译器:
/usr/local/include
/usr/lib/gcc/i486-linux-gnu/4.4.3/include
/usr/lib/gcc/i486-linux-gnu/4.4.3/include-fixed
/usr/include
C ++编译器:
/usr/include/c++/4.4.3
/usr/include/c++/4.4.3/i486-linux-gnu
/usr/include/c++/4.4.3/backward
/usr/local/include
/usr/lib/gcc/i486-linux-gnu/4.4.3/include
/usr/include
是什么可能导致这一点,如何使Netbeans将其标记为有效代码?
解决方案
这对我来说可以。我正在使用Netbeans 6.8;我获得的唯一不确定的参考是用于add()函数。
您可以测试一个新项目以查看是否可以重现问题吗?
编辑(回复):
是的,在Linux上测试。在项目属性中添加了否。
在全局C/C ++选项中,我有一个额外的c,c/c /usr/include/i486-linux-gnu
.
对于C ++,我有:
/usr/include/c++/4.4
/usr/include/c++/4.4/i486-linux-gnu
/usr/include/c++/4.4/backward
/usr/local/include
/usr/lib/gcc/i486-linux-gnu/4.4.3/include
/usr/lib/gcc/i486-linux-gnu/4.4.3/include-fixed
/usr/include/i486-linux-gnu
/usr/include
这些是我的默认值,没有触摸它们。 HTH我还使用GCC-4.4.3(Ubuntu 10.04)。
其他提示
您有适当的内容吗?
如果我没记错的话,你需要
#include <iostream>
转到工具 - >选项 - > c/c ++ - >构建工具,它将显示编译器NetBeans正在使用。例如
/usr/bin/g++
在终端中打字:
$ whereis g++
g++: /usr/bin/g++ /usr/bin/X11/g++ /usr/share/man/man1/g++.1.gz
$ ls -al /usr/bin/g++
lrwxrwxrwx 1 root root 7 Mar 13 2012 /usr/bin/g++ -> g++-4.6
将显示哪个版本的编译器NetBeans正在使用。如果“代码协助”选项卡中的库不匹配,则需要为正确版本的库更改它们。例如
/usr/include/c++/4.6
...
/usr/lib/gcc/i686-linux-gnu/4.6/include-fixed
等等。
不隶属于 StackOverflow