Когда глобальные переменные действительно считаются хорошей / рекомендуемой практикой?
Мы много читали о том, почему глобальные переменные плохие и почему их не следует использовать. И все же большинство широко используемых языков программирования поддерживают глобальные переменные в некотором роде.
Поэтому мой вопрос: почему глобальные переменные все еще нужны, дают ли они какое-то уникальное и незаменимое преимущество, которое не может быть реализовано альтернативно? Есть ли какие-либо преимущества для глобальной адресации по сравнению с указанным пользователем настраиваемым перенаправлением для извлечения объекта из локальной области?
Насколько я понимаю, в современных языках программирования глобальная адресация имеет такое же снижение производительности, как и вычисление каждого смещения из адреса памяти, будь то смещение от началаГлобальный" пользовательская память или смещение отthis
или любой другой указатель. Таким образом, с точки зрения производительности, пользователь может подделать глобальные переменные в узких случаях, когда они необходимы, с помощью общего перенаправления указателя без потери производительности для реальных глобальных переменных. Так что еще? Действительно ли нужны глобальные переменные?