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

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

    +147

    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
    template <typename type>
    class some
    {
    
      type val;
    public:
      some( const type &a ) : val(a)
      {  }
      template<typename t>
      some( const some<t> &a )
      {
        val = static_cast<type>(a.val);
      }
      template <typename type>
      friend class some; // иначе ошибка - нет доступа к приватному члену
    };

    Филосовский однако язык. Для того что бы все свои секреты нужно с самим собой подружиться...
    Сбрил усы - дружись с усатым...

    Enelar, 17 Августа 2011

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

    +147

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    Сори что сюды, но тут быстрее всего получить ответ)))
    Можете заслуженно ставить минусы.
    Как мне получить доступ к типу обьявленному и зависящему от параметров по имени переменной?
    Хочу сделать что то типа:
    const typeof(c->active)::entry * const e = c->active.GetEntry(i);
    вместо
    const structs::local_db<package, 64, type>::entry *const (на практике символов больше)
    
    взять к примеру те же итераторы.
    
    P.S больше не буду, но мне показалось это говнокодом)

    Enelar, 17 Августа 2011

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Программист С++ с опытом:
    Но самое брутальное и бессердечное из того, что мне приходилось видеть
    в коммерческих продуктах, было полноценным динамическим полиморфизмом,
    реализованном на макросах и механизме исключений. Так уж получилось,
    что автор проекта знал обо всех возможностях языка C++, кроме виртуальных функций.
    вместо вызова виртуальной функции кидалось специальное исключение, а последовательность
    блоков catch выступала в роли динамического диспетчеризатора. Вот это было реально круто —
    если бы был конкурс работ на самую нестандартную реализацию какого-нибудь стандартного механизма,
    то я бы отдал этой работе первое место, хоть она и абсолютно несовместима с реальной жизнью.

    CPPGovno, 16 Августа 2011

    Комментарии (29)
  5. Java / Говнокод #7537

    +147

    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
    <script type="text/javascript" >
        var str = window.location + "";
        var t = str.substr(7, 2);
        if (t=="40") {document.write("(4842)<span style=\"font-size:30px;font-weight:bold;color:white;\">562–003</span>");}
        if (t=="36") {document.write("(473)<span style=\"font-size:30px;font-weight:bold;color:white;\">233-03-20</span>");}
        if (t=="62") {document.write("(4912)<span style=\"font-size:30px;font-weight:bold;color:white;\">300-305</span>");}
        if (t=="ww") {document.write("(4872)<span style=\"font-size:30px;font-weight:bold;color:white;\">39-03-06</span>");}
        if (t=="po") {document.write("(4872)<span style=\"font-size:30px;font-weight:bold;color:white;\">39-03-06</span>");}
    </script>
    <script type="text/javascript" >
       var str = window.location + "";
       var t = str.substr(7, 2);
       if (t=="40") {document.write("Калуга");}
       if (t=="36") {document.write("Воронеж");}
       if (t=="62") {document.write("Рязань");}
       if (t=="ww") {document.write("Тула");}
       if (t=="po") {document.write("Тула");}
    </script>

    Вот так упыри меняют телефоны на сайте в зависимости от региона, при том, что сайт использует PHP на сервере.

    demitriy_, 12 Августа 2011

    Комментарии (13)
  6. Куча / Говнокод #7535

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    Не думаю что все оценят т.к. далеко не настоящий говнокод, а исскуственый из разряда "китайскио/индусский".
    Да и вообще не код а идея!
    Суть в следущем.
    Из едениц и любых операторов нужно составить как можно боле короткое выражени, дающее в результате 17.

    Вот маё:
    (1+1<<1+1)+1
    :D

    Fai, 12 Августа 2011

    Комментарии (33)
  7. PHP / Говнокод #7516

    +147

    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
    $offset = intval($_POST['offset']);  
            $sql    = mysql_query("SELECT * FROM `test` ORDER BY id DESC LIMIT $offset, 5");  
            if(mysql_num_rows($sql)>0) { 
            while($post = mysql_fetch_assoc($sql)){  
                foreach($post AS $n=>$m){  
                    $post[$n] = utf8_encode($m); 
                }  
                $json['more'][] = $post; # чтобы было легче до 
            }   
             if(count($json['more']))  { 
                 $json['ok'] = '1';  
             } else {  
                 $json['ok'] = '0'; 
             }      
            } else { 
               $json['ok']='3'; 
            }     
            mysql_close($db);  
        
    echo json_encode($json);

    Индусский метод выборки записей из таблицы.

    fqnm, 11 Августа 2011

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    <?php $breadcrumb=explode('/',$_SERVER['REQUEST_URI']); ?>
    <?php $lead=false; ?>
    <?php foreach ($breadcrumb as $i=>$part) { ?>
    		<?php if($i) {if($lead) { ?> &raquo; <?php } else $lead=true;} ?>
    		<a href="<?php echo HTML::chars(implode('/',array_slice($breadcrumb,0,$i))); ?>"><?php echo HTML::chars($part); ?></a>
    	<?php
    }?>

    вот такие хлебные говняные крошки.
    вьюшка.

    Lure Of Chaos, 09 Августа 2011

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    <?php
    
    $cacheUrlKey = array( date( 'Y-m-d' ), $bsKey, $positionId, 'hopheynananei_tolidelvoprosovnet', $url );
    $cacheEverythingKey = array( date( 'Y-m-d' ), $bsKey, $positionId, 'hopheynananei_chtonigovori' );

    1999, 09 Августа 2011

    Комментарии (2)
  10. JavaScript / Говнокод #7491

    +147

    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
    $(document).ready(function() {
        // get elements only once instead of every Interval
        var clock = {};
        clock.seconds = $('.clock_seconds');
        clock.minutes = $('.clock_minutes');
        clock.hours = $('.clock_hours');
        
        setInterval( function() {
            // get time
            var date = new Date();
            var seconds = date.getSeconds();
            var mins = date.getMinutes();
            var hours = date.getHours();
    
            // count degrees
            var seconds_degree = seconds * 6; // 60 secs * 6 deg = 360 deg
            var minutes_degree = mins * 6; // 60 mins * 6 deg = 360 deg
            var hours_degree = hours * 30 + (mins / 2); // 12 hours * 30 = 360 deg
    
            // apply transform
            clock.seconds.css({"-moz-transform" : 'rotate('+seconds_degree+'deg)'});
            clock.minutes.css({"-moz-transform" : 'rotate('+minutes_degree+'deg)'});
            clock.hours.css({"-moz-transform" : 'rotate('+hours_degree+'deg)'});
    
        }, 1000 );
    });

    Часы на CSS3, под FireFox 5.

    aTei, 08 Августа 2011

    Комментарии (15)
  11. PHP / Говнокод #7485

    +147

    1. 1
    2. 2
    $date_send = explode(".", $date_send);
    $date_send = date("Y/m/d", mktime(0, 0, 0, $date_send[1], $date_send[0], $date_send[2]));

    Так мы преобразуем даты
    $date_send приходит в формате dd.mm.yyyy

    minisot, 08 Августа 2011

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