c++ 使用JsonCPP解析API请求,但代码无法编译

xesrikrc  于 2023-02-10  发布在  其他
关注(0)|答案(1)|浏览(165)
#include<string>
#include<iostream>
#include<json/json.h>
#include<cpr/cpr.h>

using namespace std;
using namespace cpr;

int main() {
    Response r = Get(Url{ "https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd" });
    Json::Value data;
    Json::Reader reader;
    reader.parse(r.text, data);
    cout << data << endl;
}

我试图打印出响应{"Bitcoin" {"USD: 23000"}}。当我只使用响应和cout r.text时,它运行得很好。但是当我使用jsoncpp时,它说"有构建错误,你想运行以前的构建吗?"
构建错误:
生成已开始... 1〉------生成已开始:项目:项目1,配置:调试x64------1〉主对象:错误LNK2019:无法解析的外部符号"public:__cdecl Json::值::值(枚举Json::值类型)"(??0Value@Json@@QEAA@W4ValueType@1@@Z)在函数main 1〉主对象中引用:错误LNK2019:无法解析的外部符号"public:__cdecl Json::值::~值(空)"(??1Value@Json@@QEAA@XZ)在函数main 1〉主对象中引用:错误LNK2019:无法解析的外部符号"public:__cdecl Json::读取器::读取器(无效)"(??0Reader@Json@@QEAA@XZ)在函数main 1〉Main. obj中引用:错误LNK2019:无法解析的外部符号"public:bool__cdecl Json::读取器::解析(类标准::基本字符串〈字符,结构标准::字符特性,类标准::分配器〉常量&,类Json::值&,布尔)"(?解析@读取器@Json@@QEAA_NAEBV?$基本字符串@DU?$字符特性@D@标准@@V?$分配器@D@2@@std@@AEAVValue@2@_N@Z)在函数main 1〉Main中引用。对象:错误LNK2019:函数main中引用了无法解析的外部符号"类标准::基本码流〈字符,结构标准::字符特性〉&__cdecl Json::运算符〈〈(类标准::基本码流〈字符,结构标准::字符特性〉&,类Json::值常量&)"(??6Json@@YAAEAV?$基本码流@DU?$字符特性@D@std@@@std@@AEAV12@AEBVValue@0@@Z)

pw9qyyiw

pw9qyyiw1#

看起来您将JsonCPP视为一个仅包含头文件的库,而仅仅#include该头文件就足够了。
然而,看起来https://github.com/open-source-parsers/jsoncpp也包含了一些源代码,所以你可能应该构建那个库并链接它。

相关问题