[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Объявление глобальных переменных в c.



Wladimir Krawtschunowsi пишет:

On Fri, May 05, 2006 at 23:00 +0200, Anton Petrusevich wrote:
On Friday 05 May 2006 15:21, Artem Chuprina wrote:
Но вообще так делать без КРАЙНЕЙ необходимости не рекомендуется.  Разве
что у тебя эта переменная - константа.
Это ещё почему? "КРАЙНЯЯ" необходимость может быть продиктована просто некоторым удобством решения конкретной задачи, мы ж не знаем что там за задача. А про религиозное "в программе не должно быть глобальных переменных" лучше не надо. Меня, например, напрягает передавать каждому объекту ссылку на объект, который ведёт лог программы.

Ну здесь в принципе вопрос в здравом смысле. Чем меньше этих
переменных будет, тем лучше. Особенно если это не константа, и какая-то
функция догадается её поменять не сговариваясь с осталными, то ошибку
потом можно искать годами.... Но это не должно делать из глобальных переменных табу. Кое-где они действительно очень удобны, если код не вылазиет
за рамки двух трёх тысяч строк.
Процитирую товарищей Харви и Пола Дэйтел:
"Если эффективность прикладной программы не является критическим
параметром, то следует избегать употребления глобальных переменных,
потому что они нарушают принцип минимума привилегий."




Reply to: