Кресты / Говнокод #5540 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
try
{
  for(..)
  {
     for(..)
     {
        if(...)
           throw;//генерация исключения
     }
  }
}
catch(..)
{
}

Кому-то религия не позволяет юзать goto. Сорри, если было.

Запостил: CHayT CHayT, (Updated )

Комментарии (32) RSS

  • +доставляющий комментарий. Копипаста из чьего-то технобложика, вроде как объясняющая применение исключений.
    Ответить
  • Охренеть, тот же goto, только с кучей ненужного оверхеда.
    // КО
    Ответить
  • В некоторых диалектах Паскаля можно дать внешнему циклу имя, и написать break имя_внешнего_цикла во внутреннем.
    Ответить
    • вы опять с паскалем?
      это называется метка, и почти все современные языки это позволяют сделать break или continue
      Ответить
      • А мне нравится
        for(;;){
        ...
        for byRow (;;){
        ...
        for(;;){
        ...
        for(;;){
        ...
        break byRow;
        ...
        };
        ...
        };
        ...
        };
        ...
        };
        Ответить
      • break и continue на 1 уровень есть везде, это понятно. А на 2 уровня, и чтобы без goto?
        Ответить
              • 1)А метку можно ставить где угодно или только около цикла?
                2)contiue поддерживает с меткой?
                Ответить
                  • LOOPGiGi:
                    a=5;
                    ...
                    LOOP1: for(;;){
                    LOOP2: for(;;){
                    break LOOPGiGi;
                    }
                    }
                    а так можно?
                    Ответить
                    • нет.

                      проверил:
                      public class T {
                        public static void main(final String[] args) {
                          LOOPGiGi: // Warning: The label LOOPGiGi is never explicitly referenced
                          System.out.println(); // помечать обьявления нельзя
                          int a = 5;
                          // ...
                          LOOP1: for (;;) {
                            LOOP2: for (;;) {
                              break LOOPGiGi; //Error: The label LOOPGiGi is missing
                            }
                          }
                        }
                      }
                      Ответить
                        • однако, за десятилетнюю практику метки использовал всего пару раз, а коллега с 5-летним опытом работы с явой признался, что вообще про метки не знал.

                          Наверное, это в принципе редчайшая фишка явы.
                          Ответить
              • Ненужный синтаксический сахар! В Шарпе этого нет!

                Ну хоть в чём-то жаву можно обвинить :). А то всё шарп обвиняют - мол, сахарка много 🙂
                Ответить
        • На самом деле очень полезное ограничение: разрешить ставить метку только у цикла.
          Ответить
  • Кому-то религия не позволяет использовать другие типы циклов кроме for
    Ответить
  • А вынести форы в функции с возвратом була? лямбды
    Ответить
      • Ну, тупо вот как-то так

        bool subfor(...)
        {
            for (...)
            {
                if (...)
                    return false;
            }
            return true;
        }
        .....
        for (...)
        {
            if (!subfor())
                break;
        }

        М?
        Ответить
          • Лямбдой можно сделать subfor, чтобы не генерить одноразовые плоти. Это создает иллюзию меньшего размера кода, что и хочется многим.
            Ответить
  • Я не могу точно сказать, когда я влюбился в Мэта. Это не было чем-то спонтанным, скорее это было накоплением всех моих чувств, страхов и желаний. Трудно не ревновать, когда видишь, как он проводит время в кругу своих друзей. Как парни играют и резвятся, а тебе приходится зубрить днём и ночью уроки, чтобы хоть как-то доказать отцу, что ты не пустое место. Это тяжело. А потом Мэта отбирают в школьную футбольную команду, и ты становишься свидетелем того, как он приносит свою первую победу своей команде, да и всей школе в целом. И вот его уже любит вся школа, а ты всё тот же Остин, с кучей комплексов и с огромной неуверенностью в себе.
    Ответить

Добавить комментарий

Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:

    А не использовать ли нам bbcode?


    8