#include <nlohmann/json.hpp>
#include <iostream>
#include <string>

struct Person {
    std::string name;
    std::string sex;
    int age;
    std::string telephone;
};

NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(Person, name, sex, age, telephone)


int main() {
    Person p{"李华", "男", 30, "13888888888"};
    
    // 序列化:结构体 -> JSON字符串
    nlohmann::json j = p;
    std::string serialized = j.dump();
    std::cout << serialized << std::endl;
    
    // 反序列化:JSON字符串 -> 结构体
    std::string json_str = R"({"name":"韩梅梅",”sex":"女","age":28,“telephone":"13999999999"})";
    Person p2 = nlohmann::json::parse(json_str);
    
    return 0;
}

 

标签: json, nlohmann, 序列化, 反序列化

上一篇: ArchLinux下编译安装PaddleOCR
下一篇: 没有了

添加新评论