Générateur JSON vers C++

Entrée JSON

Chargement de l’éditeur…

C++ Généré

Configuration

Saisissez du JSON pour générer des classes C++

Classes C++ modernes avec sérialisation JSON

Comment convertir JSON en C++ – guide étape par étape

Utilisez ce générateur JSON vers C++ pour créer des classes/structures C++ à partir d'exemples JSON pour les services backend et les applications natives.

  1. Étape 1 – Collez un échantillon JSON

    • Collez un objet ou un tableau JSON représentatif dans l'éditeur de gauche.
    • Incluez des objets imbriqués, des tableaux et des champs nullables afin que les types soient correctement déduits.
    • Utilisez Import pour charger JSON à partir d'un fichier, d'une URL ou d'un exemple de données.
  2. Étape 2 – Choisissez les options de génération C++

    • Choisissez une racine Class Name qui correspond à votre modèle de domaine.
    • Décidez comment représenter les champs nullables (par exemple std::optional).
    • Confirmez la manière dont les tableaux et les objets imbriqués sont mappés (généralement std::vector et types imbriqués).
  3. Étape 3 – Vérifiez le code généré

    • Vérifiez les noms de champs, les types et la façon dont les tableaux/objets sont modélisés.
    • Ajustez les options telles que Root Type Name, la gestion des valeurs nulles et les frameworks si disponibles.
    • Si un champ est déduit de manière incorrecte, modifiez votre exemple JSON et régénérez-le.
  4. Étape 4 – Utiliser les types générés en C++

    • Ajoutez les fichiers d'en-tête/source générés à votre système de build.
    • Utilisez votre bibliothèque JSON préférée pour analyser et remplir les types de modèles.
    • Exécutez un formateur (comme clang-format) pour correspondre à votre guide de style.
  5. Étape 5 – Copier ou télécharger

    • Copiez la sortie dans votre projet ou téléchargez-la sous forme de fichier.
    • Exécutez votre formateur/linter pour qu'il corresponde à votre style de code.
    • Ajoutez des bibliothèques d'analyse/sérialisation JSON si votre langage l'exige.

Conseils rapides

  • Utilisez std::optional pour les champs qui peuvent être manquants ou nuls.
  • Gardez l'analyse et la validation proches des limites de votre application.
  • Préférez les types valeur et RAII pour éviter la gestion manuelle de la mémoire.
Exemple de résultat (simplifié)
// Entrée 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;
};

Outils JSON et C++ associés

Explorez d'autres outils JSON et de schéma qui fonctionnent parfaitement avec ce générateur JSON vers C++.

Questions fréquentes

Quelles fonctionnalités C++ sont prises en charge ?

Le générateur crée des classes C++ modernes avec constructeurs, méthodes getter/setter, sérialisation/désérialisation JSON, et support des conteneurs STL et smart pointers.

Comment la sérialisation JSON est‑elle gérée ?

Les classes générées incluent des méthodes toJson() et fromJson() fonctionnant avec la bibliothèque nlohmann/json pour sérialiser et désérialiser des données JSON.

Quels standards C++ sont pris en charge ?

Le code généré est compatible C++11 et plus, utilise std::string, std::vector et d’autres conteneurs STL, avec un support optionnel des smart pointers.

Comment les objets imbriqués sont‑ils gérés ?

Les objets imbriqués génèrent des définitions de classe correspondantes ; les tableaux sont mappés sur std::vector pour supporter des structures imbriquées complexes.

Générateur JSON vers C++ | JSONSwiss