0

我想创建一个构造函数,那就是通过传递创建 Json 对象。

class JsonObject {
    std::map<std::string, QVariant> mMapOfMarks;

public:
    JsonObject(std::initializer_list<std::pair<const std::string, QVariant> > marksMap) :
            mMapOfMarks(marksMap) {
    }
    void display() {
        for (auto entry : mMapOfMarks)
            con << QString::fromStdString(entry.first) << " : " << entry.second ;
        std::cout << std::endl;
    }
};

这是初始化对象列表

JsonObject json_obj
{
    { "Riti", 2 },
    { "Jack", "4asdf" } ,
    {"sdfsdf","sdfd"}
};

并显示好,输出:

> "Jack"    :  QVariant(QString, "4asdf")  
> "Riti"    :  QVariant(int, 2)
> "sdfsdf"  :  QVariant(QString, "sdfd")

但我想构造嵌套的 json 对象,如下所示?我怎样才能做到这一点?

我想要的示例 jsonobject,键是字符串,但值类型可变,例如 int、double、string、float、char 或任何已知数据类型

JsonObject json_obj
{
    { "Riti", 2 },//int
    { "Jack", "4asdf" } ,//String
    {"sdfsdf", // object
        {"scvzx",342423.45} // double
    }
};
4

0 回答 0