jsoncpp初使用

Posted talenth

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsoncpp初使用相关的知识,希望对你有一定的参考价值。

一 前言

     由于最近一个c++项目需要使用json这种数据格式来传输数据, so上网去寻找合适的类库,毕竟对于这种不是很新的技术, 自己造轮子有点得不偿失. 从百度上翻了翻, 基本上就boost跟jsoncpp两个可用的, 由于项目主体使用boost, 所以本着去繁就简的原则,开始使用boost,不过可能是我技术不够,反正觉得boost很难用, 于是转而用jsoncpp. 用了几天, 感觉jsoncpp比boost好用多了,代码小巧, 使用简单, 而且用法上跟python很像,毕竟这东西就是脚本语言javascript原生的数据结构

 

二 jsoncpp到目前为止发现的一些可能是坑的地方

    1 查看一个字段是否存在要用isMember这个函数. 而不是isNull这个函数,后者只是判断这个字段的值是不是null而已

    2 operator[]这个函数跟c++语言里面map里面同名函数很像, 就是如果这个字段不存在,就是创建这个字段,并且将其值赋null

    3 判断一个字段的值的类型相关的

         <1> isUint()这个函数, 如果json对应的值是个负数,比如说"-1" , 则返回false, 这个跟c++语言里面int类型的可以给unsigned int类型的变量的规则还是不太一样的

         <2> isObject这个是判断某个字段的值是不是一个对象(包括python里面叫做字典的变量类型).这个除了字典以外的对象, 这个概念我现在还没有弄明白

     4 暂时就发现上面这些, 其他的等我发现了再过来补充 

以上是关于jsoncpp初使用的主要内容,如果未能解决你的问题,请参考以下文章

如何在安卓ndk工程中引入jsoncpp

JsonCpp在vs中使用

jsoncpp使用小结

C++ 解析Json——jsoncpp

jsoncpp使用经验

C++ jsoncpp解析二维数组