Введение в сериализацию в C++
Сериализация - перевод значения в последовательность символов для хранения или передачи.
Обратный шаг называют десериализацией: из текста снова получают те же числа, строки и структуры полей.
Формат JSON хранит данные как текст:
объекты в фигурных скобках с парами
имя-значение, массивы в квадратных скобках,
строки в кавычках и числа без кавычек.
В C++ нет встроенного JSON, поэтому
удобно взять заголовочную библиотеку
nlohmann/json и тип
nlohmann::json.
Пустой объект можно заполнить одним ключом
и вывести компактную строку через
dump:
#include <iostream>
#include <nlohmann/json.hpp>
int main() {
nlohmann::json item;
item["title"] = "notebook";
std::cout << item.dump() << "\n";
return 0;
}
В консоли появится одна строка без переносов,
где ключ "title" сопровождает
строковое значение. Такой текст можно
положить в файл или отправить другому
процессу, а затем разобрать обратно
в nlohmann::json.