В Objective-C ++ я хочу, чтобы мое приложение могло сохранять и загружать файлы, которые выражают существование определенных объектов C ++. Например, пользователь запускает приложение и создал объекты a
, b
и c
классов A
, B
и C
. Пользователь нажимает сохранить, чтобы создать файл, который перечисляет эти объекты в каком-либо формате. Затем приложение должно иметь возможность загружать из этого файла и инициализировать новые объекты x
, y
и z
классов A
, B
и C
, вызывая конструкторы A()
, B()
и C()
. (Это, очевидно, значительное упрощение процесса.)
Какая, на ваш взгляд, лучшая стратегия для этого? Есть ли более элегантное решение, чем большой оператор switch, отображающий текст в конструкторы или что-то в этом роде? Помогут ли мне функциональные указатели? Я мог бы представить себе что-то вроде регистрации A
, B
и C
с помощью объекта, которому они принадлежат, и где-то хранятся их конструкторы с ключом, но мне интересно, есть ли что-то простое, что м отсутствует.
Большая проблема заключается в том, что необходимо сохранить десятки классов, поэтому я хочу найти самое легкое из возможных решений.