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

    +57

    1. 1
    if (!this) return;

    Actine, 05 Сентября 2014

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

    +51

    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
    void Snake::turnSnake(const int key)
    {
        QPoint pos = components_of_snake.last().topLeft();
        QPoint temp = pos;
    
        bool wasTurned = false;
    
        if((key == Qt::Key_Right) && (side_turn != LEFT))
        {
            side_turn = RIGHT;
    
            pos.rx() += SIZE_OF_COMPONENT;
            wasTurned = true;
        }
        else if((key == Qt::Key_Left) && (side_turn != RIGHT))
        {
            side_turn = LEFT;
    
            pos.rx() -= SIZE_OF_COMPONENT;
            wasTurned = true;
        }
        else if((key == Qt::Key_Up) && (side_turn != DOWN))
        {
            side_turn = UP;
    
            pos.ry() -= SIZE_OF_COMPONENT;
            wasTurned = true;
        }
        else if((key == Qt::Key_Down) && (side_turn != UP))
        {
            side_turn = DOWN;
    
            pos.ry() += SIZE_OF_COMPONENT;
            wasTurned = true;
        }
    
        if(wasTurned)
        {
            components_of_snake.last().moveTo(pos);
            _cathUpHead(temp);
        }
    }

    Метод поворота для змейки)

    darkKnight, 03 Сентября 2014

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

    +61

    1. 1
    int len = dynamic_cast<GatewayRec *>(*Iter)->PrefixMatch(aliases, matchedalias, priority);

    gnugk

    bormand, 02 Сентября 2014

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

    +53

    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
    void nearest(double v) {
        double d = 0.1;
        double v2 = v + d;
        double v3;
        double v4;
        while (v2 != v) {
            v3 = v + d;
            v4 = v - d;
            d = d * 0.9;
            v2 = v + d;
        }
        qDebug() << QString::number(v2,'f',30) << QString::number(v3,'f',30) << QString::number(v4,'f',30);
    }
    
    void roundTest() {
        double v1 = 1.90;
        double v2 = 1.91;
        QString vr1 = QString::number((v1+v2)*0.5,'f',2);
        QString vr2 = QString::number((v1+v2)*0.500000000000000111022302462516,'f',2);
        qDebug() << vr1 << vr2;
    }
    
    #define DOUBLE_HALF 0.500000000000000111022302462516

    Когда-нибудь меня за это побьют

    overloop, 29 Августа 2014

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    for (conn_vector::iterator i = m_connections.begin(); i != m_connections.end(); ++i) {
        if (*i == conn) {
            m_connections.erase(i);
            toDelete = *i;
            break;
        }
    }

    Да, С++98. Да, в std::find не умеем. Да, сегфолт. Да, моё.

    Elvenfighter, 27 Августа 2014

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    for (conn_vector::iterator i = m_connections.begin(); i != m_connections.end(); ++i) {
        if (*i == conn) {
            toDelete = *i;
            m_connections.erase(i);
            break;
        }
    }

    Да, С++98. Да, в std::find не умеем. Да, сегфолт. Да, моё.

    Elvenfighter, 27 Августа 2014

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

    +58

    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
    void Model::setPosition(GLfloat x, GLfloat y, GLfloat z) {
            if (m_position == NULL) {
                m_position = (float *) malloc(3 * sizeof(float));
            }
    
            if (m_position != NULL) {
                m_position[0] = x;
                m_position[1] = y;
                m_position[2] = z;
            }
        }
    
        void Model::setRotate(GLfloat x, GLfloat y, GLfloat z) {
            if (m_rotate == NULL) {
                m_rotate = (float *) malloc(3 * sizeof(float));
            }
    
            if (m_rotate != NULL) {
                m_rotate[0] = x;
                m_rotate[1] = y;
                m_rotate[2] = z;
            }
        }

    http://code.google.com/p/forget3d/
    Во первых, умиляет умение людей взяв современный супернавороченый удобный автомат, вместо того чтоб нажать на курок и выстрелить в противника, взять этот автомат наперевес как дубинку, и идти им пиздить противника по голове. Я о сишке, слегка прикрытой крестами.
    И во вторых, этот код при недостатке памяти просто нифига не делает, что чревато непонятками - вроде и повертел модель, вроде и подвинул, а оно никак не вертится и не двигается.

    Pythoner, 27 Августа 2014

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

    +53

    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
    void _debugPrintWaveHeader(const char *path, const WAVHEADER &source_header)
    {
    	FILE *debug = fopen("path", "wt");
    	fprintf(debug, "chunkId    = %s\n", source_header.chunkId);
    	fprintf(debug, "chunkSize  = %u\n", source_header.chunkSize);
    	fprintf(debug, "format     = %s\n", source_header.format);
    	fprintf(debug, "subCh1Id   = %s\n", source_header.subchunk1Id);
    	fprintf(debug, "subCh1Size = %u\n", source_header.subchunk1Size);
    	fprintf(debug, "audioform  = %u\n", source_header.audioFormat);
    	fprintf(debug, "numChanels = %u\n", source_header.numChannels);
    	fprintf(debug, "sampleRate = %u\n", source_header.sampleRate);
    	fprintf(debug, "byteRate   = %u\n", source_header.byteRate);
    	fprintf(debug, "blockAlign = %u\n", source_header.blockAlign);
    	fprintf(debug, "bitsPerSam = %u\n", source_header.bitsPerSample);
    	fprintf(debug, "subCh2Id   = %s\n", source_header.subchunk2Id);
    	fprintf(debug, "subCh2Size = %u\n", source_header.subchunk2Size);
    	fclose(debug);
    }

    Начал разгребать один говнопроект... При отладке программа всё падает и падает, падает и не может остановится. Смотрю на код - все в норме, а потом, по прошествии нескольких часов...

    GreatMASTERcpp, 25 Августа 2014

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

    +58

    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
    if(ext == ".wav")
    		{
    			if(main_header.bitsPerSample == 8)
    			{
    				switch(main_header.bitsPerSample)
    				{
    					case 8:
    					{
    						open_mode = n8bit_mode;
    					}break;
    					case 16:
    					{
    						open_mode = n16bit_mode;
    					}break;
    					default: open_mode = nNULL;
    				}
    ....далее какото код
    }

    ...

    GreatMASTERcpp, 25 Августа 2014

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

    +62

    1. 1
    2. 2
    wchar_t c1 =
        (wchar_t)LOWORD(::CharUpperW((LPWSTR)(DWORD_PTR) MAKELONG(*i1, 0)));

    Шиндовс, штроки, штрадания
    http://llvm.org/bugs/show_bug.cgi?id=20712

    roman-kashitsyn, 21 Августа 2014

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