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

    +993

    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
    class A
    {
    public:
     int a;
     int getA(){return a;}
    };
    
    class B: public A
    {
    public:
     int b;
     int getB(){return b;}
    };
    
    class C: public A
    {
    public:
     int c;
     int getC(){return c;}
    };
    
    class D: public C, public B
    {
    public:
     D(): d(0) {}
     int d;
     int getD(){return d;}
    };
    
    int main()
    {
     D d;
     std::cout << d.getD();
    }

    Знакомый программист утверждает, что этот пример является примером "возможности ромбовидного наследования" в С++, совсем забывая, что этот замечательный язык генерирует ромбовидное наследование только при наследовании виртуальном, а пример не раскрывает проблему и наполовину.

    ololo_trololo, 01 Декабря 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    AnsiString DateArray = "";
    int DaysBetween = 0;
    DaysBetween = DateTimePicker2->Date - DateTimePicker1->Date;
    for (int i = 0; i <= DaysBetween; i++ )
    {
     if (i != 0)
     DateArray = DateArray + " OR ";
     DateArray =  DateArray + " date_made = '"+DateToStr(DateTimePicker1->Date + i)+"'";
    }

    Очевидно, подготавливаем запрос для отбора по диапазону дат :)

    labutinpa, 29 Ноября 2011

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

    +1001

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    QStringList list;
    QStringList::iterator i, j;
    //...
    i = qLowerBound(list.begin(), list.end(), value);
    j = qUpperBound(list.begin(), list.end(), value);
    while (i != j) {
    	processItem(*i);
    	++i;
    }

    Пахучее пятнышко из брошюры "Qt 4's Generic Algorithms"

    Xom94ok, 27 Ноября 2011

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

    +146

    1. 1
    for (int i=0, N=sizeof(a)/sizeof(int); ++i<N-1; s+=(int)(a[i]>a[i-1]&&a[i]>a[i+1]));

    Это говнокод или годный троллинг? Топик http://forum.codenet.ru/threads/69046-Помогите-задача-С/

    mrxak, 22 Ноября 2011

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

    +1015

    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
    GetScreenShot()
    {
      std::string NameScreen = ToString(GameLevel->EngineName) + "_" + ToString(GTime->GetTimeDays()) + "_" + ToString(GTime->GetTimeHours()) + "_" + ToString(GTime->GetTimeSec()) + ".bmp";
    
      IDirect3DTexture9 *tex;
      IDirect3DSurface9 *surf;
      D3DVIEWPORT9 vp;
    
      Device->GetViewport(&vp);
        if FAILED(Device->CreateTexture(vp.Width, vp.Height, 1, 0, D3DFMT_A8R8G8B8,D3DPOOL_SYSTEMMEM, &tex, NULL ))
          Beep(1000,100);
        
        if FAILED(tex->GetSurfaceLevel(0, &surf))
          Beep(500,100);
        if FAILED(Device->GetFrontBufferData(0, surf)) 
          Beep(200,100);
        D3DXSaveSurfaceToFile(ToPointChar(ToString(Pather::CutPath()) + "\\ScreenShots\\" + NameScreen), D3DXIFF_BMP, surf, NULL, NULL);
      surf->Release();
      tex->Release();
    }

    http://www.gamedev.ru/code/forum/?id=154941

    dos_, 20 Ноября 2011

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

    +144

    1. 1
    app::window::event* event = new app::window::event::keyboard::press(key);

    tymofey, 20 Ноября 2011

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

    +1020

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    #include <QtGui>
    #include <math.h>
    #include "scene3D.h"
    #include "glext.h"
    
    const GLfloat pi=3.141593, k=pi/180;

    http://www.gamedev.ru/code/articles/OpenGL_Qt4_part2 maximum omsk

    dos_, 20 Ноября 2011

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

    +1009

    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
    void SendIntMessages(int* array, int len, bool sendFromstart)
    {
    	int i = sendFromstart ? 0 : (len - 1);
    
    	for (;;)
    	{
    		if ((sendFromstart) && (i >= len)) break;
    		else if ((!sendFromstart) && (i < 0)) break;
    
    		SentIntMessage(array[i]);
    
    		if (sendFromstart) i++;
    		else i--;	
    	}
    }

    Гибкий цикл.

    southerton, 18 Ноября 2011

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

    +996

    1. 1
    abstractObject=abstractObject;

    Когда я это обнаружила в коде, то упала со стула.

    Говногость, 17 Ноября 2011

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

    +158

    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
    class WindowStateSelector { // helper class to share visibility between some DialogStates
    public:
        explicit WindowStateSelector(WindowState * current = NULL): mCurrent(current) {}
        void Add(WindowState *windowState) { windowState->Show(windowState == mCurrent); }
        virtual void Select(WindowState *windowState)
        {
            if (windowState == mCurrent) return;
            if (mCurrent != NULL) mCurrent->Show(false);
            if (windowState != NULL) windowState->Show(true);
            mCurrent = windowState; 
        }
        WindowState * GetCurrent() { return mCurrent; }
    
    protected:
        WindowState * mCurrent;
    };

    Пример кода, говнокласса и его говнофункций;

    govnocoder123, 17 Ноября 2011

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