色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c++ json寫入數(shù)據(jù)類型

C++中的JSON寫入數(shù)據(jù)類型可以通過(guò)rapidjson庫(kù)來(lái)實(shí)現(xiàn),rapidjson是一個(gè)非常快速的C++ JSON解析器/生成器,可以將JSON格式的數(shù)據(jù)轉(zhuǎn)化為C++對(duì)象或者將C++對(duì)象轉(zhuǎn)化為JSON格式的數(shù)據(jù)。

JSON支持很多基本數(shù)據(jù)類型,如string、number、bool、null等

#include "rapidjson/document.h"
#include "rapidjson/writer.h"
#include "rapidjson/stringbuffer.h"
using namespace rapidjson;
int main()
{
Document document;
document.SetArray();
Document::AllocatorType& allocator = document.GetAllocator();
for (int i = 0; i< 10; i++) {
Value object(kObjectType);
object.AddMember("name", Value().SetString("tom", allocator), allocator);
object.AddMember("age", i + 10, allocator);
object.AddMember("isStudent", true, allocator);
document.PushBack(object, allocator);
}
StringBuffer buffer;
Writerwriter(buffer);
document.Accept(writer);
std::cout<< buffer.GetString()<< std::endl;
return 0;
}

在以上代碼中,我們首先通過(guò)Document對(duì)象來(lái)創(chuàng)建一個(gè)JSON數(shù)組,并獲取Document對(duì)象的分配器Allocator,然后利用Value對(duì)象和其相應(yīng)的SetXxx函數(shù)來(lái)設(shè)置數(shù)組中對(duì)象的屬性,再將此對(duì)象push到Document中,形成一個(gè)完整的JSON數(shù)組數(shù)據(jù)。最后通過(guò)rapidjson庫(kù)的Writer對(duì)數(shù)組進(jìn)行序列化輸出。

在本例中,我們?cè)诿恳粋€(gè)JSON object中設(shè)置了三個(gè)屬性,分別為name、age、isStudent,其類型分別為string、number、bool。其中字符串類型需要我們利用Allocator特殊地分配內(nèi)存空間。其他的類型都可以直接賦為相應(yīng)的值。

總之,以上代碼便是利用C++及rapidjson庫(kù)實(shí)現(xiàn)JSON數(shù)據(jù)的寫入操作的例子,同時(shí)也展示了如何設(shè)置JSON的基本數(shù)據(jù)類型。