命名空间"命名空间"中没有名为"name"的成员
No member named 'name' in namespace 'namespace'
我一辈子都搞不清为什么会产生这个错误,因为我很确定语法是正确的(显然我错了!)。所以我想我会看看这里是否有人能为我指出这一点。
main.cpp
#include "Object.h"
int main(){
out = json::readJSON(data_dir + "a2-empty_array_with_empty_object.json", e, debug);
}
Object.h
namespace json{
template<typename T>
std::string readJSON(std::string jsonFile, T& object, bool debug = false, char delimiter = ',') {}
}
当函数显然在名称空间中时,我基本上得到了这个错误。为什么它将功能称为成员?也许这里还有别的事情。。。
错误:
a2main.cpp:66:21: error: no member named 'readJSON' in namespace 'json'
out = json::readJSON(data_dir + "a2-cartoons.json", c, debug, '|');
您可能没有正确地包含头文件。
以下代码编译(同时使用clang和gcc)并运行良好的
#include <string>
namespace json
{
template<typename T>
std::string readJSON(std::string jsonFile, T& object, bool debug = false, char delimiter = ',')
{
return "Hello"; //This function should return a string
}
}
int main()
{
std::string data_dir = "test-";
int e = 3;
bool debug = false;
std::string out = json::readJSON(data_dir + "a2-empty_array_with_empty_object.json", e, debug);
return 0;
}
我希望这能有所帮助。
#包括
//这将修复错误%100
相关文章:
- 命名空间中具有.h和.cpp文件的类
- 从父命名空间重载类型
- 在命名空间中定义函数还是限定函数
- C++:对不存在的命名空间使用命名空间指令
- 通过继承类使用来自不同命名空间的运算符
- 使用命名空间时出现多个定义错误
- CUDA内核和数学函数的显式命名空间
- 嵌套的匿名命名空间
- CMakeLists.txt中的命名空间表示法
- 类是C++中的命名空间吗
- 在命名空间中使用全局命名空间中的函数
- 如何使 std::sort 在 std::swap 和我的命名空间的模板化交换之间没有名称冲突?
- '使用命名空间{嵌套在另一个命名空间中的某个命名空间}"
- 是否可以将函数导入命名空间,但不能导出它?
- C++ C++类中的命名空间降级
- 如何使用 soong 命名空间来有条件地编译模块
- 在 C++ 中使用命名空间时出现"does not name a type"错误
- 命名空间"命名空间"中没有名为"name"的成员
- 命名空间错误'Not a namespace-name'
- 在命名空间内实例化时的 C++ "Does not name type"