欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c map 轉(zhuǎn)化json

C++的STL庫(kù)提供了一個(gè)很有用的容器:map。它可以通過(guò)key-value的方式存儲(chǔ)數(shù)據(jù),并且支持快速查找和調(diào)整。然而,有時(shí)候我們需要將map轉(zhuǎn)化為JSON格式,以便在各種平臺(tái)中傳輸和存儲(chǔ)數(shù)據(jù)。

cJSON是一個(gè)小巧而強(qiáng)大的C語(yǔ)言庫(kù),用于創(chuàng)建和解析JSON數(shù)據(jù)。我們可以使用cJSON在C++中將map轉(zhuǎn)化為JSON字符串。

#include#include#include "cJSON.h"
using namespace std;
int main() {
mapmyMap;
myMap.insert(pair("Tom", 10));
myMap.insert(pair("Jerry", 20));
myMap.insert(pair("Mickey", 30));
cJSON* root = cJSON_CreateObject();
cJSON* jsonMap = cJSON_CreateObject();
for (auto& [key, value] : myMap) {
cJSON_AddNumberToObject(jsonMap, key.c_str(), value);
}
cJSON_AddItemToObject(root, "map", jsonMap);
char* jsonString = cJSON_PrintUnformatted(root);
cout << "JSON String: " << jsonString << endl;
cJSON_Delete(root);
free(jsonString);
return 0;
}

我們首先創(chuàng)建一個(gè)map myMap,插入一些元素,然后創(chuàng)建一個(gè)cJSON對(duì)象 root來(lái)存儲(chǔ)我們的JSON數(shù)據(jù)。我們還創(chuàng)建了一個(gè)jsonMap對(duì)象,用于存儲(chǔ)map數(shù)據(jù)。接下來(lái),通過(guò)循環(huán)遍歷map中的元素,并將它們作為key-value對(duì)添加到j(luò)sonMap中。

最后,我們將jsonMap對(duì)象添加到root對(duì)象中,并將root對(duì)象轉(zhuǎn)化為一個(gè)JSON字符串。我們可以使用cout語(yǔ)句來(lái)輸出JSON字符串。最后,我們刪除root對(duì)象并釋放字符串指針的內(nèi)存。