Я создаю небольшой симулятор жизни в стиле Avida. Я начал с очень простой, универсальной 600-строчной программы в одном файле для проверки некоторых идей, а теперь я хочу создать реальный дизайн.
Среди прочего, у меня был объект глобальной конфигурации, который у каждой другой функции что-то получилось. Теперь я должен локализовать объект и передать ему указатели. Дело в том, что в основном этот объект нужен всем. Я придумал три возможных решения:
a) Сохранить объект конфигурации глобальный (самый простой, но не совсем решение)
б) Хранить указатели везде, где они есть необходимо (достаточно просто, хотя и бесполезно памяти, так как некоторые маленькие простые старые структуры данных потребуют it).
c) Создание фабрик для типов POD которым нужен доступ к опциям и завод выполняет все операции на их.
Из моих идей только (с) звучит логично,но я не хочу без нужды усложнять структуру. Что бы вы сделали, ребята?
Меня устраивают новые идеи, и я предоставлю всю информацию о программе, которую вы хотите знать.
Заранее спасибо!