В любом случае все в порядке.
Если бы это был я, он был бы у меня при создании объекта конфигурации.
cConfig Config("config.ini");
Этот класс Config будет загружать настройки, найденные в файле. Любой код может получить доступ к настройкам, выполнив
Config.Get("NumberOfFoobars")
Для целей тестирования, если в конструкции нет файла, для настроек класса установлено значение по умолчанию или создается файл журнала со строкой, уведомляющей пользователя об отсутствующих настройках.
И затем для функций, которым требуется конфигурация, я бы передавал экземпляр Config как часть параметров:
DoStuff(Config, [...]);
и DoStuff получает переменные из класса Config.
Это делает класс тестируемым (вы можете имитировать класс Config), читабельным (с первого взгляда, вы можете сказать, для какой функции требуется Config), и вам не нужно полагаться на статические экземпляры (одиночные игры опасны, если вы не знать, как их использовать).
Возможно, вам будет интересно узнать больше об этом