История изменений
Исправление rumgot, (текущая версия) :
Я не очень одобряю размещение в статической памяти глобальных переменных не элементарных (фундаментальных типов). Т.к. они все инициализируются до main и при большом их объеме могут повлиять на скорость запуска программы. Если так уж нужны глобальные переменные, то мне больше нравится вариант с возвратом ссылки на статическую локальную переменную из функции, при этом инициализация происходит во время первого обращения, а поскольку вряд ли все эти переменные нужны в одном месте, а обращения размазаны по коду программы, то и их инициализация также происходит не в одной точке, а равномерно распределенно по программе не осуществляя явных задержек в выполнении в одном месте.
Исходная версия rumgot, :
Я не очень одобряю размещение в статической памяти глобальных переменных не элементарных (фундаментальных типов). Т.к. они все инициализируются до main и при большом их объеме могут повлиять на скорость запуска программы. Если так уже нужны глобальные переменные, то мне больше нравится вариант с возвратом ссылки на статическую локальную переменную из функции, при этом инициализация происходит во время первого обращения, а поскольку вряд ли все эти переменные нужны в одном месте, а обращения размазаны по коду программы, то и их инициализация также происходит не в одной точке, а равномерно распределенно по программе не осуществляя явных задержек в выполнении в одном месте.