Generatore JSON → C++

Input JSON

Caricamento editor…

C++ Generato

Configuration

Inserisci dati JSON per generare classi C++

Classi C++ moderne con supporto alla serializzazione JSON

Come convertire JSON in C++ – guida passo passo

Utilizza questo generatore da JSON a C++ per creare classi/strutture C++ da esempi JSON per servizi backend e applicazioni native.

  1. Passaggio 1: incolla un esempio JSON

    • Incolla un oggetto o un array JSON rappresentativo nell'editor di sinistra.
    • Includere oggetti nidificati, matrici e campi nullable in modo che i tipi vengano dedotti correttamente.
    • Utilizza Import per caricare JSON da un file, un URL o dati di esempio.
  2. Passaggio 2: scegli le opzioni di generazione C++

    • Scegli una radice Class Name che corrisponda al tuo modello di dominio.
    • Decidi come rappresentare i campi nullable (ad esempio std::optional).
    • Confermare il modo in cui gli array e gli oggetti nidificati vengono mappati (in genere std::vector e tipi nidificati).
  3. Passaggio 3: rivedere il codice generato

    • Controlla i nomi dei campi, i tipi e il modo in cui sono modellati gli array/oggetti.
    • Modifica opzioni come Root Type Name, gestione null e framework, se disponibili.
    • Se un campo viene dedotto in modo errato, modifica il JSON di esempio e rigeneralo.
  4. Passaggio 4: utilizzare i tipi generati in C++

    • Aggiungi i file di intestazione/origine generati al tuo sistema di compilazione.
    • Utilizza la tua libreria JSON preferita per analizzare e popolare i tipi di modello.
    • Esegui un formattatore (come clang-format) per adattarlo alla tua guida di stile.
  5. Passaggio 5: copiare o scaricare

    • Copia l'output nel tuo progetto o scaricalo come file.
    • Esegui il tuo formattatore/linter per adattarlo allo stile del tuo codice.
    • Aggiungi librerie di analisi/serializzazione JSON se la tua lingua le richiede.

Suggerimenti rapidi

  • Utilizza std::optional per i campi che possono essere mancanti o nulli.
  • Mantieni l'analisi e la convalida vicino al confine della tua app.
  • Preferire tipi di valore e RAII per evitare la gestione manuale della memoria.
Output di esempio (semplificato)
// Ingresso 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;
};

Strumenti JSON e C++ correlati

Esplora altri strumenti JSON e schemi che funzionano alla grande insieme a questo generatore da JSON a C++.

Domande frequenti

Quali funzionalità C++ sono supportate?

Il generatore crea classi C++ moderne con costruttori, metodi getter/setter, funzionalità di serializzazione/deserializzazione JSON e supporta container STL e smart pointer.

Come viene gestita la serializzazione JSON?

Le classi generate includono metodi toJson() e fromJson() che funzionano con la libreria nlohmann/json per serializzare e deserializzare i dati JSON.

Quali standard C++ sono supportati?

Il codice generato è compatibile con C++11 e versioni successive, usa std::string, std::vector e altri container STL, con supporto opzionale agli smart pointer.

Come vengono gestiti gli oggetti annidati?

Gli oggetti annidati generano definizioni di classe corrispondenti, gli array vengono mappati a std::vector, supportando strutture dati annidate complesse.

Generatore JSON → C++ | JSONSwiss