Ввод JSON
Сгенерированный C++
Введите JSON, чтобы сгенерировать классы C++
Современные классы C++ с JSON‑сериализацией
Генерируйте классы C++ из JSON‑структур данных
Введите JSON, чтобы сгенерировать классы C++
Современные классы C++ с JSON‑сериализацией
Используйте этот генератор JSON в C++, чтобы создавать классы/структуры C++ из образцов JSON для серверных служб и собственных приложений.
Шаг 1. Вставьте образец JSON.
Import для загрузки JSON из файла, URL-адреса или образца данных.Шаг 2. Выберите параметры генерации C++.
Class Name, соответствующий вашей модели домена.std::optional).std::vector и вложенные типы).Шаг 3. Просмотрите сгенерированный код.
Root Type Name, обработку значений NULL и платформы, если они доступны.Шаг 4. Используйте сгенерированные типы в C++.
Шаг 5 – Скопируйте или загрузите
Советы
std::optional для полей, которые могут отсутствовать или иметь значение NULL.// Ввод JSON
{
"id": 123,
"name": "Maeve Winters",
"email": "[email protected]",
"active": true,
"roles": ["admin", "editor"],
"metadata": { "plan": "pro" },
"createdAt": "2024-03-01T10:15:00Z",
"score": 99.5,
"notes": null
}
// Generated C++ models (simplified)
struct Metadata {
std::string plan;
};
struct Root {
int id;
std::string name;
std::optional<std::string> email;
bool active;
std::vector<std::string> roles;
Metadata metadata;
std::string createdAt;
double score;
std::nullptr_t notes;
};Узнайте больше об инструментах JSON и схемы, которые отлично работают вместе с генератором JSON в C++.
Преобразуйте существующие классы C++ в примеры JSON и схему JSON для документации и проверки.
Создайте схему JSON на основе образцов JSON для проверки полезных данных и контрактов.
Отформатируйте и проверьте JSON перед созданием моделей C++, чтобы избежать проблем во время выполнения.
Создавайте структуры Rust, если вам нужна строгая типизация и поддержка serde.
Генератор создаёт современные классы C++ с конструкторами, методами getter/setter, поддержкой JSON‑сериализации/десериализации, а также STL‑контейнеры и smart pointers.
Сгенерированные классы содержат методы toJson() и fromJson(), которые работают с библиотекой nlohmann/json для сериализации и десериализации.
Код совместим с C++11 и выше, использует std::string, std::vector и другие STL‑контейнеры, с опциональной поддержкой smart pointers.
Для вложенных объектов генерируются соответствующие классы, массивы маппятся на std::vector — поддерживаются сложные вложенные структуры.