Boost Library中的Rapid JSON和Json解析器之间有什么区别(Boost \ property_Tree \ Json_parser.hpp)
感谢。
答案 0 :(得分:3)
我在nativejson-benchmark中比较了37个C / C ++ JSON库,以获得标准一致性和性能。
但是,我未能在基准测试中集成Boost.PropertyTree(1.60),因为它将数字,true,false,null类型解析为字符串。
编辑:为了更直接地回答这个问题,Boost.PropertyTree无法提供大多数JSON库所做的JSON功能。另一方面,RapidJSON是一个具有高一致性和性能的JSON库。顺便说一句,除了解析/字符串化JSON之外,RapidJSON还提供流式API,JSON指针和JSON模式。这些功能在开源库中并不常见。
答案 1 :(得分:1)
对于您的所有信息,BOOST中集成了一个新库。
BOOST.Json https://www.boost.org/doc/libs/1_75_0_beta1/libs/json/doc/html/index.html
虽然不确定性能。
PS:我的评论没有50个声誉。
答案 2 :(得分:0)
编辑 - Boost Library似乎只使用RapidXML,而不是RapidJSON。
它应该与您无关,因为它无论如何都是库的实现细节。
所以答案可能是“不”(更可能的是,“是”),你可以从中获得绝对的一切,因为你不能依赖它。
选择您自己的XML库并在您需要的地方使用它:What XML parser should I use in C++?
IIRC Boost主要修改名称空间,因此当您选择RapidXML时不会出现ODR冲突