1. Perl / Говнокод #1693

    −55.2

    1. 1
    return ('3');

    Возвращаем код ошибки.

    Запостил: propanoid, 26 Августа 2009

    Комментарии (10) RSS

    • Где смеяться?
      Ответить
      • Лопата.
        Ответить
      • ну, может, имелось в виду, что `return 3` - то же самое, но на четыре символа короче... ну а вообще без разницы, наверно, дело привычки или удобства
        Ответить
        • Да, скорее всего.
          Ответить
        • Я конечно понимаю, что в перле нету типизации как таковой, то в данном случае мы возвращаем строку, в кторой содержится 3, а при return 3 будет возвращаться число.
          Так что не гоните. ;)
          Ответить
          • Так число и будет строкой.. Смотря как использовать, разве нет?
            Ответить
      • >>Где смеяться?
        +1. Вполне допустимая запись. Разве что пробел перед скобками имелся ввиду.

        Хотя короче всего было бы просто 3; выполненное последним.
        Ответить
    • очень плохая привычка
      Ответить
    • Иногда требуется форсирование типа. Например, при работе с библиотекой, которая лезет в perlguts и проверяет тип параметра при валидации ( ретвал это функции может использоваться как входной параметр другой). Допустим, используется библиотека чисел с фиксированной точкой, которая принимает только строки или, скажем, Math::BigFloat для гарантии отсутствия потери при конвертации в double. А может это просто приватный метод, который форсирует тип для перегруженной операции. В общем, говнокодность только в использовании неименованной константы
      Ответить

    Добавить комментарий