将包含150多个变量的C ++类转换为Json对象

时间:2017-07-25 10:19:06

标签: c++ json class

我在C ++中编写并使用JsonCPP。我有一个包含150多个变量的类,我想知道是否可以立即将所有变量转换为Json。我不想这样做:

myClass.h

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

的main.cpp

int main() 
{
   Json::Value param;

   param["var0"] = var0;
   param["var1"] = var1;
   //...
   param["var150"] = var150;
}

感谢您的提示。

1 个答案:

答案 0 :(得分:2)

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