jsonecho

JSON у C++

Вставте приклад JSON, щоб створити відповідні типи C++.

Завантаження інструмента...

Як користуватися JSON у C++

  1. Вставте показовий приклад JSON, бажано з усіма заповненими необов’язковими полями.
  2. Задайте назву кореневого типу й виберіть, чи потрібен вам допоміжний код, чи лише типи.
  3. Скопіюйте згенерований код C++ у свій проєкт.

Про JSON у C++

Писати класи моделей вручну для великого обсягу JSON-даних нудно, і так легко припуститися друкарської помилки. Вставте сюди приклад, і генератор визначить структуру: які поля є, які з них об’єкти чи масиви та який тип має кожне значення. Результат — структури в просторі імен quicktype із функціями from_json і to_json для бібліотеки nlohmann/json.

Результат потребує бібліотеки nlohmann/json з одним заголовним файлом, а також невеликого допоміжного блоку для необов’язкових значень, який уже включено. Усе працює у браузері, тому дані з вашого прикладу залишаються на вашому пристрої.

Використання згенерованого коду

Включіть заголовку nlohmann json, а потім auto root = nlohmann::json::parse(text).get<quicktype::Root>();.

Факультативні члени використовують std::shared_ptr<T> і є нулевими, коли ключ відсутній.

Поширені запитання

Які залежності має згенерований код C++?

Результат — структури в просторі імен quicktype із функціями from_json і to_json для бібліотеки nlohmann/json.

Як аналізувати JSON з результатом?

Включіть заголовку nlohmann json, а потім auto root = nlohmann::json::parse(text).get<quicktype::Root>();.

Як обробляються необов’язкові та відсутні поля?

Факультативні члени використовують std::shared_ptr<T> і є нулевими, коли ключ відсутній.

Чи аналізує генератор більше одного запису?

Генератор знає лише те, що є у вашому прикладі. Якщо поля немає в прикладі, воно не з’явиться в типах. Якщо значення в прикладі дорівнює null, його тип визначити неможливо. Вставте приклад із якомога більшою кількістю заповнених полів або масив із кількома різними записами.

Чи надсилаються мої дані JSON на сервер?

Ні. Під час першого використання генератор завантажується у браузер, приблизно 1 МБ. Далі все виконується локально.

Більше в категорії Дані в класи

Усі інструменти →