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

    +154

    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
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    //TransFunc.h
    
    //Девиз
    #ifndef MyOwn
    #define MyOwn
    #define Blackjack J♠
    #define Hookers
    #endif
    
    class TransferFunction
    {
    private:
      //...
      class Polynom
      {
        Polynom(TransferFunction * Base);  //Ссылка на базовый класс обязательна!
        //...
      }
      Polynom *Numerator, *Denominator;
    
      //...
    
      class TransferProcess
      {
        TransferProcess(TransferFunction * Base); //Ну куда же я без него...
        DynamicArray<double> TransGraphic;  //Данные графика.
        //...
      }
      TransferProcess * TrancProc;
    
      //...
    
      class SystemOptimisator
      {
        SystemOptimisator(TransferFunction * Base); //Именно так и никак иначе.
        TransferFunction * TempFunction;  //Это я так, на всякий случай...
        Polynom *Backup_Numerator, *Backup_Denominator;
        DynamicArray<Polynom> CorrectingDevice;  //А чо? Работает ведь...
        //...
      }
      SystemOptimisator * Opt;
    
    //Тут ещё классы "Matrix", "Vector", "Report"  и многие другие.
    
    publuc:
      TransferFunction();
      ~TransferFunction();
      void Optimize();
    };

    Краткость - сестра таланта:-)
    Захотелось мне удивить преподавателя (в программировании он не особо подкован (впрочем, как и я :-) )) короткой и простой "программой". Оно работало, до определенного момента, когда я попытался вставить ещё один класс... Потом я, конечно, всё переписал, по-человечески структурировав и избавившись от DynamicArray, но эти грабли я запомнил на всю жизнь.

    maniac, 14 Июня 2010

    Комментарии (113)
  2. Си / Говнокод #3472

    +131

    1. 1
    2. 2
    3. 3
    int newclient(var v, newconn oldconn) {
            [...]
    }

    Ничего особенного, конечно. Просто порадовало "newconn oldconn".

    xaionaro, 14 Июня 2010

    Комментарии (10)
  3. C++ / Говнокод #3471

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    QString sq(int deep, QString table, QString field, bool fin = false){
         if(fin) return sq(deep, table, field)+ ";";
         if(!deep) return "select min(" + field + ") from " + table;
        return "select " + field + " from " + table + " where " + field + " in(" + sq(deep-1, table, field)  + ")";
    }

    Так изнутри клиентского кода двоичным поиском выясняется, какое у БД ограничение на количество вложенных подзапросов.

    kit, 14 Июня 2010

    Комментарии (4)
  4. C++ / Говнокод #3470

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    bool GenerateException(int Code)
    {
       assert(false);
       return false;            //WTF???       Нужно перерефакторить.
    };

    Ещё одно проектное решение...

    Говногость, 13 Июня 2010

    Комментарии (47)
  5. C++ / Говнокод #3469

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    char *ptr1;
    char *ptr2;
    //...
    try {
        throw ptr2 - ptr1;
      }
      catch (int e) {
        std::cout << "exception addr dif" << e << std::endl;
      }

    Говногость, 13 Июня 2010

    Комментарии (62)
  6. JavaScript / Говнокод #3468

    +148

    1. 1
    2. 2
    3. 3
    if (browser.opera && browser.version < 10.50) {
              parent.innerHTML = parent.innerHTML;
            }

    http://vkontakte.ru/js/player.js?10 (c)

    Back, 13 Июня 2010

    Комментарии (3)
  7. C# / Говнокод #3467

    +115

    1. 1
    <%=Convert.ToDateTime(item.CreatedOnDate).ToString("D", new System.Globalization.CultureInfo(System.Globalization.CultureInfo.CurrentCulture.ToString()))%>

    Кусок кода, который отображает некую дату

    phoenixx, 13 Июня 2010

    Комментарии (4)
  8. C++ / Говнокод #3466

    +152

    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
    14. 14
    typedef signed int s32;
    
    //...
    
    void SomeStruct::SomeFunc(const char* ipImageName /*, ... */ )
    {
    	// ...
    
    	s32 imageNameSize = strlen(ipImageName) * sizeof(char) + 1;
    	this->mpImageName = new char[imageNameSize];
    	strcpy(this->mpImageName, ipImageName);
    	
    	// ...
    }

    А теперь представим, что вместо char будет wchar_t... ...автор - лид-программист...

    Kirinyale, 13 Июня 2010

    Комментарии (128)
  9. Си / Говнокод #3465

    +144

    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
    14. 14
    typedef signed int s32;
    
    //...
    
    void SomeStruct::SomeFunc(const char* ipImageName /*, ... */ )
    {
    	// ...
    
    	s32 imageNameSize = strlen(ipImageName) * sizeof(char) + 1;
    	this->mpImageName = new char[imageNameSize];
    	strcpy(this->mpImageName, ipImageName);
    	
    	// ...
    }

    А теперь представим, что вместо char будет wchar_t... ...автор - лид-программист...

    Kirinyale, 13 Июня 2010

    Комментарии (19)
  10. SQL / Говнокод #3464

    −873

    1. 1
    SELECT users.nick,group.name FROM users,group WHERE user.id='$id' AND group.id=user.group;

    Это мой код. Мне сказали что это говнокод, и порекомендовали спросить здесь.
    В чём именно говнокодость, и как надо писать правильно?

    avamana, 13 Июня 2010

    Комментарии (158)