区分jsoncpp中的int和uint类型

时间:2019-04-25 12:54:52

标签: c++ json types jsoncpp

我想用json读取一些jsoncpp数据后解析这些数据,该数据可以区分intuint数据类型。

这些类型的含义对我很清楚,但是当我读取value: 7之类的数据时,jsoncpp会将其识别为int。当然,value在不同情况下也可能为负,但是如果jsoncpp仅了解当前情况,为什么不将value解析为uint

有效的jsoncpp类型在here中列出。我检查这样的类型:

switch(root->type()) {
    case Json::intValue:    serializeInt(root->asInt(), key);       break;
    case Json::uintValue:   serializeUInt(root->asUInt(), key);     break;

仅执行int情况。

所以我的基本问题是,如何在json中表示一个值为unsigned,以便jsoncpp像这样解析它?

1 个答案:

答案 0 :(得分:1)

jsoncpp在unsigned int中不使用该值时使用int

您可以尝试使用INT_MAX + 1之类的值。