Qt中的JSON类与C ++中的其他JSON解析器相比

时间:2014-07-25 00:58:05

标签: c++ json qt

我正在用C ++开发一个服务器/客户端应用程序,我使用Qt作为我的IDE以及它的一些库。性能方面我被告知在服务器和客户端之间传输数据的最佳方法之一是通过JSON。但是,我想知道在Qt(QJsonArray,QJsonObject等)和其他C ++解析器(例如JSON ++)中解析JSON的默认类之间的性能差异。

1 个答案:

答案 0 :(得分:4)

如果Qt类的性能不够,你可以查看RapidJson:https://github.com/miloyip/rapidjson

表现比较: http://code.google.com/p/rapidjson/wiki/Performance

RapidJson的好处(除了它的速度)很容易安装和使用。来自他们的网站:

  

rapidjson是一个仅限标题的库。这意味着,唯一要做的就是将rapidjson / include / rapidjson及其子目录复制到项目或其他包含路径中。

还有来自他们的维基页面的例子:

#include "rapidjson/document.h"
#include <cstdio>

int main() {
    const char json[] = "{ \"hello\" : \"world\" }";

    rapidjson::Document d;
    d.Parse<0>(json);

    printf("%s\n", d["hello"].GetString());

    return 0;
}