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

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

    −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
    1)
    const
      OUT_OF_BOUNDS:TPoint=(X:-1; Y:-1);
    var
      INT_OUT_OF_BOUNDS:Integer absolute OUT_OF_BOUNDS;
    
    TargetForm.Perform(WM_LBUTTONUP,0,INT_OUT_OF_BOUNDS);
    
    2)
    const
      ZERO_ZERO:TPoint=(X:0; Y:0);
    var
      INT_ZERO_ZERO:Integer absolute ZERO_ZERO;
    
    TargetForm.Perform(WM_LBUTTONUP,0,INT_ZERO_ZERO);
    
    3)
    TargetForm.Perform(WM_LBUTTONUP,0,0);

    Болею. Стояла задача воспроизвести системное меню. Но оказалось, что при клике на элемент фейкового системного меню, форме не посылается WM_LBUTTONUP и кнопка-иконка не перекрашивается в ненажатый вид. Решил перформить WM_LBUTTONUP прямо при клике, но туда нужно передавать координаты мышки куда был совершён клик в High(lParam) и Low(lParam). Сначала хотел передавать -1;-1 но подумал что передавать туда $FFFFFFFF как-то некрасиво, а прямое приведение типов а-ля Integer(Point(-1,-1)) оно у меня хавать не захотело, и поэтому красоты ради наговнокодил первый вариант кода. Потом подумал, а что если там только положительные значения, будет же 65535;65535 непорядок, лучше буду передавать нули. Впихнуть туда просто 0 сразу в голову не пришло (болею же, башка квадратная) и наговнокодил второй вариант.

    Потом, конечно же, написал всё по нормальному.

    KOTOM, 07 Января 2020

    Комментарии (67)
  3. PHP / Говнокод #25707

    −16

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    https://habr.com/ru/company/alfa/blog/447416/
    
    Тестирование от профессионалов показало, что одинарные кавычки в "PHP" быстрее двойных; а, между тем,
    именно по одинарным кавычкам я всегда и тёк (двойные вечно казались мусором). Всегда, после того, как я
    машинально-нервически производил в чужом коде замену двойных кавычек на одинарные после мамкиных
    дипломатов влажных "Курсов PHP за две недели", замечал, что код начинает работать значительно быстрее.
    
    Поэтому я за "PHP" - в нём задачи оптимизации работы сайтов решаются проще пареного хуя.

    SteadfastTinCock, 09 Июля 2019

    Комментарии (67)
  4. Куча / Говнокод #25678

    −2

    1. 1
    2. 2
    3. 3
    4. 4
    1) Логинимся в почту mail.ru в другом городе.
    2) Приходит письмо безопасности, что выполнен подозрительный вход в ваш аккаунт.
    3) Сразу же удаляем письмо.
    4) Какой багор )))

    AHCKuJlbHblu_nemyx, 17 Июня 2019

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

    0

    1. 1
    return f() <= x->size() ? true:false;

    Классика?

    syoma, 20 Февраля 2018

    Комментарии (67)
  6. Си / Говнокод #23428

    0

    1. 1
    https://pastebin.com/pk5bB1Y4

    Я вам покушать принес. Задача кратко и четко объяснить человеку, почему лучше обмазаться дотнетом чем винапи. Пока решил написать группе что следующий факультатив (на котором я должен разбирать их портянки) отменяется, а там что-нибудь придумаю. Две крайности - (new EchoServer).start() и вот это, что ты будешь делать.

    Fluttie, 18 Октября 2017

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

    +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
    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
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    // p2.cpp : Defines the entry point for the console application.
    //   Язык Visual C++ 7.0
    //   Консольное приложение
    //   13.07.2016
    
    #include "stdafx.h"
    #include <conio.h>
    
    int aa (int, int, int);
    void ab (int);
    
    
    int _tmain(int argc, _TCHAR* argv[])
    {
    	int a, b, c, d, e;
    	int f;
    
    	for (a = 0; a < 4; a++)
    		for (b = 0; b < 4; b++)
    			for (c = 0; c < 4; c++)
    				for (d = 0; d < 4; d++)
    					for (e = 0; e < 4; e++)
    					{
    						f = aa (1, a, 2);
    						f = aa (f, b, 3);
    						f = aa (f, c, 4);
    						f = aa (f, d, 5);
    						f = aa (f, e, 6);
    
    						if (f == 35)
    						{
    							printf ("((((1 "); ab (a);
    							printf ("2) "); ab (b);
    							printf ("3) "); ab (c);
    							printf ("4) "); ab (d);
    							printf ("5) "); ab (e);
    							printf ("6 = 35.\n");
    						}
    					}
    
    	getch ();
    	return 0;
    }
    
    
    int aa (int a, int b, int c)
    {
    	switch (b)
    	{
    		case 0: return a + c;
    		case 1: return a - c;
    		case 2: return a * c;
    		case 3: return a / c;
    	}
    
    	return 0;
    }
    
    void ab (int a)
    {
    	switch (a)
    	{
    		case 0: printf ("+ "); break;
    		case 1: printf ("- "); break;
    		case 2: printf ("* "); break;
    		case 3: printf ("/ "); break;
    	}
    }

    Задача: В написанном выражении ((((1 ? 2) ? 3) ? 4) ? 5) ? 6 вместо каждого знака ? вставить знак одного из четырёх арифметических действий: +, -, *, / так, чтобы результат вычислений равнялся 35.

    FrontlineReporter, 13 Июля 2016

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    template <typename T, typename ...Args>
    std::future<T> looped_thread::add_task(std::function<T(Args...)> func, Args ...args) {
        std::packaged_task<T()> task(std::bind(func,args...));
        std::future<T> fut = task.get_future();
        std::lock_guard<std::mutex> lock(_mutex);
        /*std::queue<std::function<void()>>*/ _tasks.push(/*std::packaged_task<T()> -> std::function<void()> ??*/);
        /*std::condition_variable*/ _cv.notify_one(); 
        return std::move(fut);
    }

    Задача: написать собственный пул потоков с блекджеком и шлюхами
    Подзадача: реализовать метод, добавляющий функтор в очередь команд и возвращающий std::future
    Что не так: std::packaged_task не конвертируется в std::future. Он не копируется, а поэтому:
    а. его нельзя передать через std::bind;
    б. при захвате через с++14 lambda capture expressions (аля

    auto f = [t = std::move(task)](){/**/};
    ) мы получаем t типа const std::packaged_task (мб это особенность mingw, конечно, но один фиг работать должно везде). Ни выполнить, ни мувнуть, ни скопировать. mutable в спецификации лямбды не помогает
    в. Примерно все те же самые проблемы возникают при попытке обернуть packaged_task в unique_ptr
    г. если чуть-чуть погуглить, можно найти кучу страшных решений через виртуальные методы, наследование, оборачивание packaged_task в shared_ptr и пр. Например: https://rsdn.ru/forum/cpp/5824551.all

    Но есть куда более простое и изящное решение. Угадаете?

    Antervis, 12 Мая 2016

    Комментарии (67)
  9. PHP / Говнокод #19690

    +2

    1. 1
    https://habrahabr.ru/post/280121/

    RestAPI в 2016 году. Отсосите, любители фреймворков и оттестированных библиотек

    loki90, 24 Марта 2016

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

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #include <vector>
    
    template <typename T>
    void FreeAll( T & t ) {
        T tmp;
        t.swap( tmp );
    }

    3_dar, 20 Марта 2016

    Комментарии (67)
  11. Куча / Говнокод #17379

    +138

    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
    *            *     ,MMM8&&&.            *
                      MMMM88&&&&&    .
                     MMMM88&&&&&&&
         *           MMM88&&&&&&&&
                     MMM88&&&&&&&&
                     'MMM88&&&&&&'
                       'MMM8&&&'      *    _
              |\___/|                      \\
             =) ^Y^ (=   |\_/|              ||    '
              \  ^  /    )a a '._.-""""-.  //
               )=*=(    =\T_= /    ~  ~  \//
              /     \     `"`\   ~   / ~  /
              |     |         |~   \ |  ~/
             /| | | |\         \  ~/- \ ~\
             \| | |_|/|        || |  // /`
      jgs_/\_//_// __//\_/\_/\_((_|\((_//\_/\_/\_
      |  |  |  | \_) |  |  |  |  |  |  |  |  |  |
      |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
      |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
      |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
      |  |  |  |  |  |  |  |  |  |  |  |  |  |  |

    katze, 27 Декабря 2014

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