1. Лучший говнокод

    В номинации:
    За время:
  2. C++ / Говнокод #13628

    +9

    1. 1
    // When F does not contain result_type, result_of<F(T1, T2, ..., TN)>::type is F::result<F(T1, T2, ..., TN)>::type when N > 0 or void when N = 0.

    http://www.boost.org/doc/libs/1_54_0/libs/utility/utility.htm#result_of
    > void when N = 0.
    Создатели boost::result_of решили, что если функция принимает 0 аргументов, то она не может ничего возвращать кроме void.

    LispGovno, 20 Августа 2013

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

    +9

    1. 1
    2. 2
    3. 3
    HRESULT hr = ReadGenericXMLFile(srcStorage, pagePath, result);
      if (hr == S_FALSE) return STG_E_FILENOTFOUND;  // File must exist
      if (FAILED(hr)) return hr;

    Могу понять, обратное, когда вызывающая функция просто возвращает "false" при любом неудачном вызове внутренней функции: нет файла / нет доступа / runtime error и т.д. Здесь же наоборот, при "общем" неудачном вызове внутренней функции возвращается "конкретное" сообщение об ошибке.

    Fogbit, 25 Июля 2013

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

    +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
    14. 14
    /*
    ======================================                                 
    Returns 1 (true) if the this block of the board is empty, 0 if it is filled
     
    Parameters:
     
    >> pX:        Horizontal position in blocks
    >> pY:        Vertical position in blocks
    ======================================
    */
    bool Board::IsFreeBlock (int pX, int pY)
    {
        if (mBoard [pX][pY] == POS_FREE) return true; else return false;
    }

    http://javilop.com/gamedev/tetris-tutorial-in-c-platform-independent-focused-in-game-logic-for-beginners/

    Ну вот кто их этому учит?

    denis90, 17 Июля 2013

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

    +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
    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
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    void SillyThread::run()
    {
        forever
        {
            // ... a test ...
        }
    }
    
    void CrazyThread::run()
    {
        forever
        {
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
    
            if(qrand() % 2 == 0)
            {
                // ... a test ...
            }
        }
    }

    не совсем говно, но имена и структука прикололи. из кода стресс-теста PDF библиотеки poppler.

    Dummy00001, 19 Июня 2013

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

    +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
    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
    void drawAAWave(DWORD *image, WAVE *w, int top, int left, 
    		int width, int height, int offsetPx)
    	{
    		int thd2 = top + height/2;
    		float hm2 = this->height - 2;
    		int x = 0, xc = 0, yc = 0;
    		float mul = amplify;
    		if (invert) mul = -mul;
    		if (x*scale + offsetPx*scale > w->length) return;
    		float yFrom = (thd2 - w->data[offsetPx*scale]*mul);
    		if (yFrom < 2.0f) yFrom = 2.0f;
    		if (yFrom > hm2) yFrom = hm2;
    		float yTo, dist, delta, sdelta, alpha, lc; 
    		int yMin, yMax, xcl, n;
    		for ( ; x < width-1 && (x+offsetPx)*scale < w->length; x++)
    		{
    			yTo = thd2 - w->data[(x + offsetPx)*scale]*mul;
    			if (yTo < 2) yTo = 2; if (yTo > hm2) yTo = hm2;
    			delta = yTo - yFrom;
    			sdelta = 1.0f / sqrtf(1.0f + delta*delta);
    			lc = ((x + 0.5f)*yTo - (x + 1.5f)*yFrom) + 0.5f;
    			yMin = (int)(min(yFrom, yTo)) - 1;
    			yMax = (int)(max(yFrom, yTo)) + 1;
    			xcl = x;
    			if (delta > 1.0f || delta < -1.0f) xcl++;
    			for (xc = x; xc <= xcl; xc++)
    				for (yc = yMin; yc <= yMax; yc++)
    				{
    					dist = ((-delta)*(xc + 0.5f) + yc + lc)*sdelta;
    					alpha = 1.0f - fabs(dist*0.8f);
    					if (alpha < 0.0f) alpha = 0.0f;
    					n = maxWidth*yc + xc;
    					image[n] = clrBlend(image[n], lineColor, alpha);
    				}
    			yFrom = yTo;
    		}
    	}

    Велосипедный метод рисования кривой с антиализингом

    just_nameless, 25 Марта 2013

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

    +9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    y=fopen(lex,"w+");
    fclose(y);
    FILE *r=fopen(result,"w+");
    fclose(r);
    FILE *k=fopen("pryklad.obj","w+");
    fclose(k);

    Abbath, 13 Февраля 2013

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

    +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
    14. 14
    15. 15
    class A
    {
    public:
            A () : p (new SomeType)
            {
                    assert ("It must be non-zero" && p);
            }
            ~A ()
            {
                    Box <SomeType> deleter (p);
                    p = 0;
            }
    private:
            SomeType *p;
    };

    А вот и применение класса Box

    Setry, 19 Ноября 2012

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

    +9

    1. 1
    http://ideone.com/vvkWO4

    Fai, 21 Октября 2012

    Комментарии (8)
  10. Куча / Говнокод #10155

    +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
    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
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    У МЕНЯ БОЛЬШОЙ ХУЙ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    uiopqwertyasd, 01 Мая 2012

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

    +8.5

    1. 1
    2. 2
    3. 3
    4. 4
    void delete_ServerClick(object sender, ImageClickEventArgs e)
    {
      Parent.FindControl(ID).Visible = false;
    }

    автоматически генерируемый контрол, метод находится непосредственно в самом контроле

    guest, 15 Декабря 2008

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