C靜態反射序列號Json是C++語言中的一個庫,它可以將程序中任意一個數據結構以Json串的形式序列化。
#include "cjson_lib/cjson.h" struct Student{ std::string name; int age; double score; }; int main() { Student s = {"Tom", 18, 99.5}; const auto json_str = cjson::serialize(s); std::cout<< json_str<< std::endl; // 輸出 {"name":"Tom","age":18,"score":99.5} return 0; }
在這個例子中,我們定義了一個Student結構體,同時使用CJson庫將這個結構體序列化成Json字符串??梢钥吹剑蛄谢蟮腏son字符串已經包含了結構體中的所有成員,并以鍵值對的形式儲存。
C靜態反射序列號Json的優勢在于,它可以自動對復雜數據結構進行遞歸序列化,而無需手動拼接字符串。這為我們在進行數據傳遞時提供了很大的便利。
在使用CJson庫時,需要注意的是,被序列化的結構體中必須包含默認構造函數和public成員變量,否則序列化過程會失敗。
下一篇c轉換成json