2017-07-25 10 views
1

私はC++でコード化しています.JsonCPPを使用しています。私は150以上の変数を持つクラスを持っており、すべての変数をJsonに一度に変換できるかどうかを知りたいと思います。私はこれを行うにはないたいと思います:150+変数を持つC++クラスを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; 
} 

感謝。

+0

リファクタリングする方法はありませんか?例えば、あなたは継承の恩恵を受けることができますか?あなたが私に頼む気にならないなら、どんなクラスですか?ちょっと興味があるんだけど。非常に多くの変数を持つクラスは見たことがありません。 – FreeNickname

+0

私は脆弱性スキャナAPI、Nessusを使って作業しています。私はスキャンポリシーを作成して設定する必要があり、そこには多くの変数があります。 –

+2

すべてのメンバー変数は同じタイプですか?もしそうなら、キーが変数名のところで '' std :: map''を使うことはできませんか?その後、マップを繰り返してJSONにシリアル化することができます。 – nefas

答えて

2

1つの方法は、構造をGoogle Protocol Buffersに作成することです。すべてのメンバーを(.cppファイルの代わりに.protoファイルに)一度登録する必要がありますが、protobufライブラリto convert to or from JSONを使用することができます。また、他の便利な機能もあります。バイナリ形式、gRPCと一緒に使用します)。

関連する問題