libjson文档翻译
导言:我已经有好几个项目使用了libjson库,感觉这是个挺不错的JSON库,顺便翻译了下他文档的主要部分,希望和大家一起了解学习。由于内容较多,无法全部发在博客文章上,大家可以通过我的github下载完整文档。https://github.com/yaocoder/MyDocument/blob/master/libjson%E6%96%87%E6%A1%A3%E7%BF%BB%E8%AF%91.pdf
关于libjson
项目主页:http://sourceforge.net/projects/libjson/
libjson 是一个适用于C和C++语言高效的并且可灵活定制的json库。它拥有针对C++的接口,使C++开发人员也能够在他们的程序中使用json,同时由于多数libjson的方法(函数)是内敛的,更进一步提升了库的效率。它也为其他类型的语言提供了C风格的接口和共享库。文档将会讲解如何去构建、优化libjson来适应你的需求,并且对C、C++接口进行详细的说明。
libjson当前最新版本为7.*,如果你想把程序中的libjson 5或是更早的版本升级到此版本,请注意相应的接口变化,但是也不用担心,所有的函数功能没有变化,它们只是更完善,更标准化。如果你想从libjson 6升级,仅有的变化是 json_validate这个接口。 libjson的接口在升级中(完善和修正bug)并没有发生变化,你可以查看每一次版本升级的changelog。
libjson不仅高效,功能也很丰富,包括parsers, writers, builders, formatters, validators… ,它还可以根据你的需求进行灵活的定制。也许你会感到奇怪:libjson看上去如此轻量但是却拥有一个200多页的文档和很多文件,但事实上你可以根据你的需求只使用需要的部分。JSONOptions.h文件中介绍了这些配置选项。在后面的部分将给你详细介绍这些配置选项的适用场景, 这些选项允许你根据自己的程序去做相应的优化。libjson设计的很精巧,它只使用少量内存,并且很高效。所以尽量不要对库本身做一些不紧要的微调。
libjson相比其他库更具备可定制性,包括mutex管理,垃圾收集(garbage collection),内存管理(memory control),unicode支持,可以灵活的定制而非只提供给你默认的行为。它拥有纯净的C接口,所有C风格的接口都有 json_前缀。它也拥有非常直观的C++接口,比如迭代器(iterators),与STL的风格相似。C和C++两种库共享了部分代码,但也有各自特定的代码。
libjson是安全的,它的默认行为就具有抵御拒绝服务攻击(DoS)的能力,并且它还拥有其他可配置的安全选项。
支持的平台:
libjson官方支持并且进行过测试验证的是以下平台:
gcc (OSX) ——完全支持
llvm (OSX) - 完全支持
gcc (LInux) - 完全支持
MinGW (Windows) - 支持, 部分经过测试
Visual C++ (Windows) - 支持, 部分经过测试
以下主要是讲解如何通过配置JSONOptions.h构建你需要的libjson...
本文转自永远的朋友博客51CTO博客,原文链接http://blog.51cto.com/yaocoder/1154617如需转载请自行联系原作者
yaocoder
libjson文档翻译相关推荐
- 【iOS官方文档翻译】iOS蓝牙的基本概念
之前写了[iOS官方文档翻译]iOS的蓝牙连接.数据接收及发送一文,介绍了怎样进行蓝牙通讯,但是很多基本概念没有进行解释,看起来可能有点吃力,所以现在再翻译一篇苹果对官方蓝牙4.0一些基本概念介绍的文 ...
- Sencha-概念-Layouts(布局)(官网文档翻译8)
Sencha-概念-Layouts(布局)(官网文档翻译8) 介绍和HBox 布局描述了在您的应用程序的组件的大小和位置.例如,一个电子邮件客户端可能具有固定到左边的消息的列表,以说,可用的宽度的三分 ...
- Laravel 5.6 中文文档翻译完成,译者 60 人,耗时 10 天
图片来自 laravel-news.com Laravel 5.6 的文档地址: Laravel 5.6 文档页面 总结 Laravel 5.6 文档翻译完成,总共耗时 10 天,参与用户 60 人. ...
- python翻译程序-Python桌面应用案例:TXT文档翻译工具(源代码)
搞定了Word文档和PDF文档翻译工具的案例,总觉得还差了一点,仔细想了下,明白了,原来差了一个TXT文本文件翻译工具案例.这个就更简单了--在PDF文档翻译工具基础上加了两个函数,就可以支持TXT文 ...
- TiDB 官方设计文档翻译(三)
这个系列共三篇译文: TiDB 官方设计文档翻译(一) TiDB 官方设计文档翻译(二) TiDB 官方设计文档翻译(三) 原文: https://pingcap.github.io/blog ...
- TiDB 官方设计文档翻译(二)
这个系列共三篇译文: TiDB 官方设计文档翻译(一) TiDB 官方设计文档翻译(二) TiDB 官方设计文档翻译(三) 原文: https://pingcap.github.io/blog ...
- TiDB 官方设计文档翻译(一)
TiDB是新兴的NEWSQL数据库,由国内的PINGCAP团队研发. 有关于TiDB的架构.部署和运维,官方有中文的文档,链接是: https://github.com/pingcap/docs- ...
- 欢迎参与 KubeVela 官方文档翻译活动
来源 | 阿里巴巴云原生公众号 背景 KubeVela v1.0 启用了新的官网架构和文档维护方式,新增功能包括文档版本化控制.i18n 国际化以及自动化流程.但目前 KubeVela 官方文档只有英 ...
- Sencha-概念-Events(事件)(官网文档翻译10)
Sencha-概念-Events(事件)(官网文档翻译10) 煎茶Touch 2的组件和类的触发广泛的事件,在其生命周期的不同点.活动让你的代码,它周围的变化作出反应,并在煎茶触摸是一个关键的概念. ...
最新文章
- 追番必备,动漫角色也可以用人脸识别了
- 如何避免jquery库和其它库的冲突
- VIM 多行注释与取消
- 9.1 mnist_softmax 交叉熵多分类器
- LeetCode之Next Greater Element I
- java 基础包的功能_Java 8的功能基础
- spark rdd读取文件
- k3 审核流程图_3 金蝶K3操作流程图详解
- 技术分享PPT整理(一):Bootstrap基础与应用
- 机器人动力学与参数辨识学习笔记(一)
- HDU题目分类大全【大集合】
- J-LINK 烧录程序
- 中国移动支付线下交易扩大,支付服务角逐趋热
- 对于线性代数、特征空间、特征提取、深度学习的一些深夜思考
- 美国宾州计算机学校,美国留学,看看宾州有哪些顶尖学校?
- 信号完整性的定义、干扰因素及解决方法详解
- 台湾大学林轩田教授机器学习基石课程理解及python实现----PLA
- 阅读笔记之:Multimodal learning in Loosely-organized web images-CVPR2014
- ENVI遥感影像解译制作土地利用专题图
- 7-33 地下迷宫探索 (30 分)
热门文章
- Windows Phone开发(44):推送通知第二集——磁贴通知
- 用Entlib的配置程序块遇到的问题
- 20140711_类的继承、派生、ACE框架、指针的问题、系统的问题
- lua4.0中实现% 取余操作
- AndroidStudio_开发工具的设置_界面设置_字体设置_使用习惯设置_按钮设置等一些设置的介绍---Android原生开发工作笔记71
- Sharding-JDBC数据库_垂直切分_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记012
- ES6新特性_ES6生成器函数实例_第二个实例---JavaScript_ECMAScript_ES6-ES11新特性工作笔记023
- JAVA高并发工作笔记0002---高并发编程之使用ThreadFactory来创建新的线程
- PAT 1003 Emergency 递归记录访问路径
- 杭电1713相遇周期