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

    0

    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
    // Tools.cpp
    
    class SleepQClass : public QThread
    {
    public:
    	static void Sleep( int ms )
    	{
    		msleep(ms); // static msleep is protected
    	}
    };
    
    void SleepQ( int ms )
    {
    	SleepQClass::Sleep(ms);
    }

    Паблик Морозов. Делаем глобальную функцию Sleep, чтобы можно было вызывать из любого места и потока. А что, реализация все равно тот же Sleep(DWORD dwMilliseconds) вызывает.

    Steve_Brown, 28 Мая 2018

    Комментарии (6)
  2. PHP / Говнокод #24330

    +1

    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
    <select name="address_country">
        <option value="AFG" <?php if($user["address_country"]=="AFG") { echo 'selected="selected"'; } ?> >Afghanistan</option>
        <option value="ALA" <?php if($user["address_country"]=="ALA") { echo 'selected="selected"'; } ?> >Åland Islands</option>
        <option value="ALB" <?php if($user["address_country"]=="ALB") { echo 'selected="selected"'; } ?> >Albania</option>
        <option value="DZA" <?php if($user["address_country"]=="DZA") { echo 'selected="selected"'; } ?> >Algeria</option>
        <option value="ASM" <?php if($user["address_country"]=="ASM") { echo 'selected="selected"'; } ?> >American Samoa</option>
        <option value="AND" <?php if($user["address_country"]=="AND") { echo 'selected="selected"'; } ?> >Andorra</option>
        <option value="AGO" <?php if($user["address_country"]=="AGO") { echo 'selected="selected"'; } ?> >Angola</option>
        <option value="AIA" <?php if($user["address_country"]=="AIA") { echo 'selected="selected"'; } ?> >Anguilla</option>
        <option value="ATA" <?php if($user["address_country"]=="ATA") { echo 'selected="selected"'; } ?> >Antarctica</option>
        <option value="ATG" <?php if($user["address_country"]=="ATG") { echo 'selected="selected"'; } ?> >Antigua and Barbuda</option>
        <option value="ARG" <?php if($user["address_country"]=="ARG") { echo 'selected="selected"'; } ?> >Argentina</option>
        <option value="ARM" <?php if($user["address_country"]=="ARM") { echo 'selected="selected"'; } ?> >Armenia</option>
        <option value="ABW" <?php if($user["address_country"]=="ABW") { echo 'selected="selected"'; } ?> >Aruba</option>
        <option value="AUS" <?php if($user["address_country"]=="AUS") { echo 'selected="selected"'; } ?> >Australia</option>
        <option value="AUT" <?php if($user["address_country"]=="AUT") { echo 'selected="selected"'; } ?> >Austria</option>
        <option value="AZE" <?php if($user["address_country"]=="AZE") { echo 'selected="selected"'; } ?> >Azerbaijan</option>
    
        ...
    
        <option value="ZWE" <?php if($user["address_country"]=="ZWE") { echo 'selected="selected"'; } ?> >Zimbabwe</option>
    </select>

    Сделали новый сайт, но заказчик потребовал сделать импорт данных со старого сайта.
    Залез в базу, вижу в столбце country у юзера код "AND". Окей, с помощью поиска нашел файл для изменения профиля.
    И тут увидел это чудо для 250 стран :)

    adamsafr, 27 Мая 2018

    Комментарии (9)
  3. Lua / Говнокод #24325

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    _G = setmetatable(_G,{__index = function() return setmetatable({},{__index = _G}) end})
    print(allah,_G) --Разные таблы, при этом аллах даже никак не объявлен
    anus.n = 10 --Это будет табла и anus.n будет таблой
    anus = {n=10} --Это будет хорошо и anus.n будет 10
    HUYZOLOTOY.table.insert(anus,10) --Нормас работает
    print(anus.opa) --А это не табла а просто nil
    for k,v in uier8u43uirhn_________.pairs(_G) do
    	hjashsnasmm.print(k,v)	--А где Allah и все остальное?
    end

    _G = setmetatable(_G,{__index = function() return setmetatable({},{__index = _G}) end})

    Сколько скриптов сломает проверку на nil?

    3oJIoTou_xyu, 26 Мая 2018

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    void Foo::singleShot()
    {
        QTime delay = QTime::currentTime().addMSecs(50);  
        while(QTime::currentTime() < delay ) {
           QCoreApplication::processEvents(QEventLoop::AllEvents, 5;
        }
        // do something
    }

    Вот такой бриллиант инженерной мысли, написанный с использованием фреймворка Qt.
    Товарисч ещё спрашивал, чем его реализация хуже чем QTimer::singleShot() :D

    Titus_PuIIo, 26 Мая 2018

    Комментарии (3)
  5. Python / Говнокод #24323

    −2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Какой есть аналог класса для данных?
    
    class Record():
        pass
    
    r = Record()
    r. asd = 1
    
    Заебало класс объявлять, неужели для такого элементарного случая ничего не придумали?

    syoma, 25 Мая 2018

    Комментарии (108)
  6. Swift / Говнокод #24322

    −2

    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
    static func == (lhs: Card, rhs: Card) -> Bool {
           return (lhs.color == rhs.color &&
            lhs.number == rhs.number &&
            lhs.shading == rhs.shading &&
            lhs.symbol == rhs.symbol) ||
            (lhs.color == rhs.color &&
            lhs.number != rhs.number &&
            lhs.shading != rhs.shading &&
            lhs.symbol != rhs.symbol) ||
            (lhs.color != rhs.color &&
            lhs.number == rhs.number &&
            lhs.shading != rhs.shading &&
            lhs.symbol != rhs.symbol) ||
            (lhs.color != rhs.color &&
            lhs.number != rhs.number &&
            lhs.shading == rhs.shading &&
            lhs.symbol != rhs.symbol) ||
            (lhs.color != rhs.color &&
            lhs.number != rhs.number &&
            lhs.shading != rhs.shading &&
            lhs.symbol == rhs.symbol) ||
            (lhs.color != rhs.color &&
            lhs.number != rhs.number &&
            lhs.shading != rhs.shading &&
            lhs.symbol != rhs.symbol)
        }

    Пытаюсь реализовать правила игры в Set протоколом Equatable. Говнокод?

    govnokoder3948, 25 Мая 2018

    Комментарии (11)
  7. Python / Говнокод #24318

    −3

    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
    from random import choice
     
    noun = ['пони', 'анус', 'синхрофазатрон', 'погромист', 'хуй', 'шланг', 'гцц', 'соснолька', 'хуита', 'говно', 'питушня', 'лалка', 'питон', 'енот', 'ватник', 'пидорашка', 'шиндос', 'линупс', 'жопа', 'дед мороз']
    verb = ['срёт', 'падает', 'бесит', 'пиздит', 'летает', 'сосёт', 'бегает']
    adj = ['сраный', 'ёбаный', 'розовый', 'коричневый', 'охуенный', 'пиздатый', 'тупой', 'ебучий', '']
     
    templates = [
        [adj, noun, verb],
        [adj, noun],
        [noun, ['говно']],
        [['У тебя'], adj, noun, verb],
        [['У тебя'], adj, noun],
        [['Какого хуя'], adj, noun, verb, ['\b?']],
        [['Почему'], noun, verb, ['\b?']],
        [['Что такое'], noun, ['\b?']],
        [adj, noun, verb, 'и', verb],
        [noun, verb, ['\b, a'], noun, verb],
    ]
     
    bububu = lambda: (lambda s: s[0].capitalize() + s[1:] + (choice('.!?') if s[-1] not in '.!?' else ''))(' '.join(i for i in map(choice, choice(templates)) if i))
     
     
    for _ in range(30):
        print(bububu())

    https://ideone.com/oOwyzI
    Просто от неча делать...

    666_N33D135, 24 Мая 2018

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

    0

    1. 1
    Серьёзный вопрос к местным игроделам:

    А есть ли какое-нибудь универсальное исследование, которое говорит, как должны быть устроены формулки в rpg/mmorpg?
    Типа что номер уровня должен зависеть как корень степени 2.8 от количества exp, hp -- линейно от str и int, а дамаг -- как среднее геометрическое дамага перса и дамага его оружия.
    Пробовал гуглить/читать геймдев -- нашёл только пространственные рассуждения "начни делать хоть как-то, а потом с помощью говна и палок отбалансируй".

    P.S. Да, я хочу написать игру и сидеть в неё играть.

    Bobik, 23 Мая 2018

    Комментарии (36)
  9. JavaScript / Говнокод #24308

    0

    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
    list.forEach((element1) => {
        if (element1.parent_id == null){
            output.push(element1);
            list.forEach((element2) => {
                if (element2.parent_id == element1.id) {
                    output.push(element2);
                    list.forEach((element3) => {
                        if (element3.parent_id == element2.id) {
                            output.push(element3);
                            list.forEach((element4) => {
                                if (element4.parent_id == element3.id) {
                                    output.push(element4);
                                }
                            })
                        }
                    })
                }
            })
        }
    })

    Super forEach

    govnokoooder, 23 Мая 2018

    Комментарии (0)
  10. Python / Говнокод #24307

    0

    1. 1
    Прыщеговно

    Explanation: The issue stemmed from two issues one in normpath and the other in os.path.join. It turns out that when normpath (or abspath) gets an absolute path starting with a single slash or 3+ slashes, the result would have a single slash. However, if the input had exactly two leading slashes the output will retain them. This behavior conforms to an obscore passage in the POSIX standard (last paragraph):

    A pathname that begins with two successive slashes may be interpreted in an implementation-defined manner, although more than two leading slashes shall be treated as a single slash.

    normpath и abspath из os.path

    syoma, 23 Мая 2018

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