gpt4 book ai didi

c++ - 使用 JsonCpp 创建 Json 消息

转载 作者:行者123 更新时间:2023-12-01 14:50:45 25 4
gpt4 key购买 nike

我正在尝试使用 Jsoncpp 创建 Json 消息。我做了如下:

#include <string>
#include <iostream>
#include <sstream>
#include <json/json.h>

int main()
{
std::string Value = "5.17e9";
std::string Type = "TX";
std::string Parameter = "Frequency";

Json::Value root;
root.append("Type");
root.append("Parameter");
root.append("Value");
root["Type"] = Type;
root["Parameter"] = Parameter;
root["Value"] = Value;

Json::FastWriter fastwriter;
std::string message = fastwriter.write(root);
std::cout<<message<<std::endl;

return 0;
}

使用以下命令行编译此代码:

g++ -o clients clients.cpp -ljsoncpp -lzmq

出现这种错误:

clients.cpp:(.text._ZN20multi_usrp_emulation7client1Ev[_ZN20multi_usrp_emulation7client1Ev    ]+0x1d9): undefined reference to `Json::Value::operator=(Json::Value)'
clients.cpp:(.text._ZN20multi_usrp_emulation7client1Ev[_ZN20multi_usrp_emulation7client1Ev ]+0x224): undefined reference to `Json::Value::operator=(Json::Value)'
clients.cpp:(.text._ZN20multi_usrp_emulation7client1Ev[_ZN20multi_usrp_emulation7client1Ev ]+0x26c): undefined reference to `Json::Value::operator=(Json::Value)'
collect2: error: ld returned 1 exit status

我的代码有什么问题?

最佳答案

我不确定链接错误,但代码存在问题,可能在您的编译器中以不同方式处理。这对我来说是一个运行时错误。

Json::Value root; 
root.append("Type"); // makes root into arrayValue
root["Type"] = Type; // accesses root as an objectValue
// triggers assert in Json::Value::resolveReference

我是这样做的:

Json::Value root; 
root["Type"] = Type;

关于c++ - 使用 JsonCpp 创建 Json 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37790748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com