У меня есть приложение на C ++. Мне нужно загрузить некоторые данные конфигурации из файла.
Структура:
Root(singleton) → ConfigManager(); LogManager(); ...;
Итак, все менеджеры созданы в Roo'ts ctor, и я могу получить на них указатели, используя метод: Root::Get().GetSomeManager()
;
int main()
{
// Here all managers are initialized
Root::Get();
// App cycle
Root::Get().Deinitialize();
return 0;
}
ConfigManager
позволяет загружать из файла значения по переданному ключу.
Вопрос:
Как я могу сохранить значения из файла в каком-то глобальном дополнительном файле?
Я написал файл Config.hpp
с кодом, который выглядит так:
const int val = Root::Get().GetConfig()->GetValue("Key");
Проблема в том, что этот файл может быть включен до инициализации менеджера конфигурации, или нет?
Я знаю, что этот код плох, но я не знаю, как написать его лучше.