我想在我的C++项目中使用nlohmann json。我从github下载后解压了压缩文件。我将解压缩的文件夹重命名为nlohmann_json
,并将其复制到我的项目中。
github文档说:
- json.hpp是single_include/nlohmann中的唯一必需文件,或在此处发布。您需要添加 *
#include <nlohmann/json.hpp>
// for convenience
using json = nlohmann::json;
字符串
所以在我的.cpp
文件中,我有以下几行:
#include "nlohmann_json/include/nlohmann/json.hpp"
using json = nlohmann::json;
型
但是Visual Studio 2015 IDE显示以下消息作为工具提示:
命名空间nlohmann没有成员json
在输入nlohmann::
后,我得到了一个自动建议json_pointer
,而不是json
。
到底出了什么问题?
2条答案
按热度按时间mxg2im7a1#
你其实对你的问题有一个提示。
字符串
如果你去你从github checkout 的原始树,并这样做:
型
你可能会发现你的问题。您正在包括找到的第一个文件。你真的需要第二个-或者-你需要设置包括搜索路径更好。
我会这么做我会将./single_include/nlohmann/json.hpp复制到项目中。我不会包括整个树,只是这个文件。包括它。
我想这对你会更好。
qyswt5oh2#
您可以使用单头方法,其中可以直接包含单个json.hpp(在single_include中,只需将nlohmann/json.hpp放在项目的根目录中)。或者,如果你想包括一个有多个文件,那么你将需要在你的VS项目设置中设置额外的包含头。
字符串
然后在VS项目设置中,将项目的路径添加到其他包含目录中。