Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C++中,NETBeANEIDE抛出“无法解析标识符字符串”_C++_Function_Declaration - Fatal编程技术网

在C++中,NETBeANEIDE抛出“无法解析标识符字符串”

在C++中,NETBeANEIDE抛出“无法解析标识符字符串”,c++,function,declaration,C++,Function,Declaration,我遇到了一些我感到困惑的错误 有一个函数声明,Netbeans IDE不断抛出一个错误 string GetValue(const std::string& key); 我得到的错误是- 无法解析标识符字符串 我做错了什么?试试这个 std::string GetValue(const std::string& key); 最好是在头文件中添加名称空间,这样就不必在代码中的任何地方都限定std名称空间。include 包括 使用名称空间std 字符串GetValu

我遇到了一些我感到困惑的错误

有一个函数声明,Netbeans IDE不断抛出一个错误

    string  GetValue(const std::string& key);
我得到的错误是-

无法解析标识符字符串

我做错了什么?

试试这个

std::string GetValue(const std::string& key);
最好是在头文件中添加名称空间,这样就不必在代码中的任何地方都限定std名称空间。

include 包括

使用名称空间std

字符串GetValueconst字符串和键


就这些

我想您已经记得包含标题了:

#include <string>


其他答案是正确的,但我不建议使用 使用名称空间std;相反,只需将所有使用字符串的调用重命名为std::string


这更简洁,有助于自动完成。

称之为std::string。使用namespace std或std::string在返回值上指定名称空间我完全支持在.cpp文件中添加任何您想要的名称空间,在大多数情况下都会鼓励这样做,但我也坚决反对用它们污染头文件。我不希望我使用的随机包含,包括其他内容,包括其他内容,然后使用名称空间std,这可能会重新定义代码中许多内容的含义。我想-1是为了建议在头中添加名称空间,而不是为了正确的原型。我同意这是一个坏主意-见我上面的评论。最好?这是我第一次听说,事实上,不是相反吗?正如Kevin在下面暗示的那样,在CPP文件中使用名称空间通常很好,但在头文件中则不行,因为它会迫使所有使用头文件的人都使用名称空间,从而污染全局名称空间。是的,在我看来,我很想知道是否有一个编译器足够聪明,如果它在.h文件中看到一个正在使用的名称空间,就会抛出一个错误。我会一直打开编译器选项。可能存在,也可能不存在。
std::string GetValue(const std::string& key);
using namespace std;
string GetValue(const string& key);