Когда использовать $stderr vs STDERR в Ruby? - программирование
Подтвердить что ты не робот

Когда использовать $stderr vs STDERR в Ruby?

Возможный дубликат:
Ruby $stdout и STDOUT

Является ли STDERR предпочтительнее использовать $stderr или наоборот?

А как насчет STDOUT vs $stdout?

4b9b3361

Ответ 1

Напротив, использование $stderr является предпочтительным.

Причиной этого является то, что $stderr как глобальная переменная может быть переназначена, а STDERR в качестве константы не следует переназначать (она вызывает предупреждение).

Обычно оба указывают на один и тот же стандартный файл ошибок, но в некоторых случаях вам может понадобиться временно перенаправить все ваши выходные данные где-то в другом месте (например, в файл журнала или в строковый буфер), и в этом случае вы можете просто переназначить $stderr, и весь ваш код будет уважать это (если вы были достаточно умны, чтобы использовать $stderr вместо STDERR).