现在的位置: 首页 > 综合 > 正文

jsoncpp编译使用

2013年03月09日 ⁄ 综合 ⁄ 共 1764字 ⁄ 字号 评论关闭
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
易于人阅读和编写。同时也易于机器解析和生成。 它基于
JavaScript Programming LanguageStandard
ECMA-262 3rd Edition - December 1999
的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

jsoncpp是人气最高的一种json c++实现 官网以及参考手册: http://jsoncpp.sourceforge.net/index.html

 

其他的实现包括
详情参见json官网:http://www.json.org/json-zh.html
要使用jsoncpp库 我们需要获取到静态链接库或者动态链接库以及相应的头文件
下面我们就对这一过程进行详细说明:(windows平台)
第一步:到sourceforge下载最新的jsoncpp库http://sourceforge.net/projects/jsoncpp/files/jsoncpp/
           目前最新的版本为0.6.0-rc2
第二步:解压得到的jsoncpp-src-0.6.0-rc2.tar.gz文件
           定位到目录\jsoncpp-src-0.6.0-rc2\makefiles\vs71会发现一个jsoncpp.sln的VS工程文件,用VS打开
第三步:设置jsoncpp库的runtime library 
            这一步根据自己项目工程需要来设置  我的工程采用的是Multi-threaded Debug DLL (/MDd)
            设置方法:
             1.右键工程properties->Configuration Properties->C/C++->Code Generation
             2.在弹出窗口左上方Configuration选择debug  然后将面板中Runtime Library设置为Multi-threaded Debug DLL (/MDd)
             3.在弹出窗口左上方Configuration选择release 然后将面板中Runtime Library设置为Multi-threaded DLL (/MD)
注意:
通过以上设置之后 release版本的库在使用过程中会有编译不通过的问题,解决方法如下:
1.右键工程properties->Configuration Properties->C/C++->Output Files 将Assembler Output设置为No Listing
2.properties->Configuration Properties->C/C++->Optimization 将Optimization设置为Full Optimization(/ox)
然后继续

第四步:抽取自己的库
           1.在想要存便已完成的库的地方如(C:\)建立文件夹jsoncpp-0.6.0,并建立子目录jsoncpp-0.6.0\lib_json\debug  jsoncpp-0.6.0\lib_json\release
           2.将工程目录中的jsoncpp-src-0.6.0-rc2\include文件夹拷贝至jsoncpp-0.6.0下
           3.将jsoncpp-src-0.6.0-rc2\build\vs71\debug\lib_json\lib_json.lib拷贝至jsoncpp-0.6.0\lib_json\debug
           4.将jsoncpp-src-0.6.0-rc2\build\vs71\release\lib_json\lib_json.lib拷贝至jsoncpp-0.6.0\lib_json\release
OK  至此我们需要的库就打包好了jsoncpp-0.6.0
使用方法跟一般静态链接库的用法相同

抱歉!评论已关闭.