1. C++ / Говнокод #2680

    +144.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    bool userNameChanged = true;
    bool passwordChanged = true;
    
    if(userNameChanged)
    {
    	// какие-то операции
    }
    
    if(passwordChanged)
    
    {
    	// ещё какие-то операции
    }

    Вот ещё один код от нашего шефа-индуса...

    Запостил: Highlander, 27 Февраля 2010

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

    • И чо?
      Ответить
      • что чо?? зачем тут эти переменные и два if написано?
        Ответить
        • Может подразумевалость что подчиненые-индусы добавят логику обращающую переменные в false?
          Ответить
          • ну если бы в строках
            // какие-то операции
            // ещё какие-то операции
            стояло бы
            passwordChanged = false, то так бы и было написано
            Ответить
    • показать все, что скрытоГде тут С++?
      Ответить
      • Наличие здесь говнокода -- не менее спорный вопрос.
        Ответить
      • C++:
        // какие-то операции
        Хотя может Си99
        Ответить
    • Получается при объявлении переменных, сразу предполагается, что имя и пароль изменены. И оба блока if отработают, т.к. никаких операций до проверки условия не производилось! Вот если бы было как-то так:
      bool userNameChanged = true;
      bool passwordChanged = true;
      
      someFunc (username); 
      someFunc (userpasswd);
      
      if(userNameChanged)
      {
      	// какие-то операции
      }
      
      if(passwordChanged)
      
      {
      	// ещё какие-то операции
      }
      Ответить
      • Если бы да кабы.
        Поскольку переменные не объявлены как static и не лежат в анонимном неймспейсе, изменить их значение можно из любой единицы трансляции. Так что не обязательно городить огород с магическими вызовами функций.
        Ответить
        • я просто привел один из возможных примеров!
          Ответить

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