将C++具有 150+ 变量的类转换为 Json 对象

Convert C++ class with 150+ variables to Json object

本文关键字:转换 Json 对象 C++ 具有 150+ 变量      更新时间:2023-10-16

我正在溺爱C++并使用JsonCPP。我有一个包含 150+ 变量的类,我想知道是否可以一次将所有变量转换为 Json。我不想这样做:

myClass.h

class myClass
{
std::string var0;
std::string var1;
//...
std::string var150;
}

主.cpp

int main() 
{
Json::Value param;
param["var0"] = var0;
param["var1"] = var1;
//...
param["var150"] = var150;
}

感谢您的提示。

一种选择是在 Google Protocol Buffers 中创建结构。您仍然需要列出所有成员一次(在 .proto 文件中而不是 .cpp 文件中(,但随后您可以使用 protobuf 库与 JSON 进行转换,并且它还具有其他方便的功能(例如迭代成员、转换为二进制格式、与 gRPC 一起使用(。