[json] JSON for Modern C++
生活随笔
收集整理的這篇文章主要介紹了
[json] JSON for Modern C++
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
有幸能接觸到這個,這是我遇到的使用最方便的json了,效率沒研究過!
簡單了使用了下,感覺非常好用,記錄下:
要使用這個json,只需要使用json.hpp就行,放入自己的工程里,但是我這里是安裝過的,為了其他項(xiàng)目也能使用!
?
環(huán)境: Mac OS X 10.12.6, Xcode(Version 8.3.3 (8E3004b))
安裝:
brew tap nlohmann/json brew search nlohmann brew info nlohmann/json/nlohmann_json brew install nlohmann/json/nlohmann_json安裝就是第1,4兩句, 等待安裝完成就行!
?
開發(fā): 新建一個c++控制臺程序,添加以下代碼:
// // main.cpp // hello // // Created by zcm on 2019/2/18. // Copyright ? 2019年 zcm. All rights reserved. //#include <iostream> #include <vector> #include "nlohmann/json.hpp"using namespace std; using json = nlohmann::json;int main(int argc, const char * argv[]) {json j2 = {{"pi", 3.141},{"happy", true},{"name", "Niels"},{"nothing", nullptr},{"answer", {{"everything", 42}}},{"list", {1, 0, 2}},{"object", {{"currency", "USD"},{"value", 42.99}}}};cout << j2.dump() << endl;// this writing looks goodauto j = R"({"happy": true,"pi": 3.141,"arr": [1, 4, 6]})"_json;cout << j << endl;j = json::parse("{ \"happy\": false, \"pi\": 3.141 }");j["pi"] = 3.666; // 修改鍵值j.emplace("pi2", 3.5); // 如果鍵不存在, 則添加j["add"] = {{"pi", 4.5}, {"p", 6}};cout << j << endl;for(auto& i : j.items()) // 遍歷鍵值對{cout << i.key() << " : " << i.value() << endl;}if(j.find("pi") != j.end()) // 鍵存在cout << j["pi"] << endl;cout << j.count("add") << endl; // count()返回1表示鍵存在, 否則不存在vector<int> v {1, 5, 7};json j3(v); // 通過vector初始化jsoncout << j3 << endl;return 0; }項(xiàng)目配置,增加:
運(yùn)行結(jié)果:
{"answer":{"everything":42},"happy":true,"list":[1,0,2],"name":"Niels","nothing":null,"object":{"currency":"USD","value":42.99},"pi":3.141} {"arr":[1,4,6],"happy":true,"pi":3.141} {"add":{"p":6,"pi":4.5},"happy":false,"pi":3.666,"pi2":3.5} add : {"p":6,"pi":4.5} happy : false pi : 3.666 pi2 : 3.5 3.666 1 [1,5,7] Program ended with exit code: 0注意: 必須開啟c++11 編譯選項(xiàng)
======================================
再補(bǔ)充說明下,上圖:
總結(jié)
以上是生活随笔為你收集整理的[json] JSON for Modern C++的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nginx的负载均衡集群
- 下一篇: 非常全的VsCode快捷键