C ++ не Java. Я рекомендую прочитать хорошую книгу по программированию на C ++ и заглянуть на какой-нибудь справочный сайт по C ++ . Помните о различных диалектах C ++ (например, C ++ 11 не то же самое, что C ++ 17).
Помните, что массивы C ++ однородны: все компоненты массива имеют один и тот же тип . В отличие от Java, C ++ не имеет типа root, такого как Java Object
class. Но в C ++ есть интересные стандартные контейнеры . Помните о правиле пяти . И вы могли бы разработать свою программу так, чтобы у вас был центральный class MyRootClass
, от которого наследуются все остальные class
.
Однако вы можете легко написать короткий код для преобразования массива в строку.
При этом вы можете найти интересные библиотеки C ++ с открытым исходным кодом, такие как POCO или Qt , чтобы облегчить вашу работу.
Вы также можете (и легко) напишите свою метапрограмму C ++, генерирующую код C ++ для объявления массивов и выдачи кода для их печати или вывода, и вы можете использовать или улучшить инструмент SWIG для этого.
Прочтите также документацию на ваш Компилятор C ++ (например, G CC или Clang ), ваш компоновщик (например, GNU binutils ) и автоматизация сборки (например, GNU make или ниндзя ). Если ваш компилятор C ++ - G CC, скомпилируйте с всеми предупреждениями и отладочной информацией, поэтому g++ -Wall -Wextra -g
(и научитесь использовать отладчик GDB ). Если ваша база кода C ++ велика (например, несколько сотен тысяч строк C ++), подумайте о написании вашего G CC плагина для автоматической генерации некоторого кода C ++ для процедур сериализации или печати.
Преобразование массива в C ++ в String
Возможно использование полустандартизированного текстового представления, например JSON или YAML (возможно, с базами данных например sqlite или PostGreSQL). Оба имеют с открытым исходным кодом библиотеки на C ++, которые могут быть полезны.
См. Также этот черновой отчет и проект RefPerSys и s11n библиотека сериализации.