Size: a a a

CODE BLOG / Чат

2020 October 22

NP

Nick Petrus in CODE BLOG / Чат
Наверное правильнее сказать - надо использовать лучшее из того что есть. А использование худшего, там где можно использовать лучшее - зло.
источник

4

4g in CODE BLOG / Чат
Jmik
Ну да,
Я к тому, что надо пользоваться тем что есть
И не использовать ибо "зло" глупо......
в шарпах есть ситуации, когда кроме гото не обойтись? Очень сильно сомневаюсь.
источник

J

Jmik in CODE BLOG / Чат
4g
в шарпах есть ситуации, когда кроме гото не обойтись? Очень сильно сомневаюсь.
Поиск по N-мерному массиву
Псевдопитонокод:
for i in range(500):
     For j in range(500):
           For l in range(500):
                 For k in range(500):
                            if arr[i][j][l][k]==0:
                                     #dostuf
                                      Goto found
Found:
      #dostuf
источник

J

Jmik in CODE BLOG / Чат
Мультибрек тут будет выглядеть убого
источник

🎁

🎁Kopoh🎄 in CODE BLOG / Чат
Jmik
Поиск по N-мерному массиву
Псевдопитонокод:
for i in range(500):
     For j in range(500):
           For l in range(500):
                 For k in range(500):
                            if arr[i][j][l][k]==0:
                                     #dostuf
                                      Goto found
Found:
      #dostuf
Мммммммм
источник

J

Jmik in CODE BLOG / Чат
Хотя если есть break N тогда все ок
источник

PG

Pavel Grachev in CODE BLOG / Чат
4g
Ну я лично с ним тоже не знаком.
Конечно я бы не стал вести такой же образ жизни как он, но он классный дядька!
источник

4

4g in CODE BLOG / Чат
Я не большой специалист, но мне кажется в данном примере ошибка проектирования.
Я бы как самое простое решение сделал бы вопрос через while not found
источник

4

4g in CODE BLOG / Чат
О спасибо за подгонку 😁 завтра поставлю в фоне 🤘🏻
источник

PG

Pavel Grachev in CODE BLOG / Чат
4g
О спасибо за подгонку 😁 завтра поставлю в фоне 🤘🏻
1 песню?😁 я такое практиковал
источник

J

Jmik in CODE BLOG / Чат
4g
Я не большой специалист, но мне кажется в данном примере ошибка проектирования.
Я бы как самое простое решение сделал бы вопрос через while not found
Там код тогда страшнее выходит
Лучше маленький goto который заменяет break n
источник

4

4g in CODE BLOG / Чат
Pavel Grachev
1 песню?😁 я такое практиковал
Нет конечно  😂 имел ввиду их треки...
источник

4

4g in CODE BLOG / Чат
Jmik
Там код тогда страшнее выходит
Лучше маленький goto который заменяет break n
Ну тогда стоит перепроектировать такую организацию хранения
источник

NP

Nick Petrus in CODE BLOG / Чат
Jmik
Там код тогда страшнее выходит
Лучше маленький goto который заменяет break n
Мне кажется логичнее тогда уже написать  функцию поиска, которая будет в качестве аргумента принимать массив любой N-мерности, а вторым - функцию сравнения элемента с условием. И возвращать найденный элемент.
источник

NP

Nick Petrus in CODE BLOG / Чат
Ну и собственно говоря return из функции и будет заменять собой goto за пределы циклов.
источник

4

4g in CODE BLOG / Чат
Return же о своей сути это безусловный выход из функции?
источник

NP

Nick Petrus in CODE BLOG / Чат
Ну да
источник

J

Jmik in CODE BLOG / Чат
Ну так а зачем придумывать все тоже самое заного при том же результате?
Чтобы избежать некрасивых букв?
#define NOT_A_GOTO goto
Красиво? Не зло?
источник

NP

Nick Petrus in CODE BLOG / Чат
Jmik
Ну так а зачем придумывать все тоже самое заного при том же результате?
Чтобы избежать некрасивых букв?
#define NOT_A_GOTO goto
Красиво? Не зло?
Чтобы мозги не заворачивались.

1.Если я вижу цикл while или do-while, то я чётко вижу где начало и конец цикла. И понимаю порядок выполнения инструкций.
2. Если я вижу вызов функции, то я уверен что после завершения функции выполнение кода продолжится с места вызова.
3. Если я вижу фразу goto, а метки не вижу, то куда перейдёт управление и к каким последствиям это может привести - совершенно непонятно.
источник

J

Jmik in CODE BLOG / Чат
Nick Petrus
Чтобы мозги не заворачивались.

1.Если я вижу цикл while или do-while, то я чётко вижу где начало и конец цикла. И понимаю порядок выполнения инструкций.
2. Если я вижу вызов функции, то я уверен что после завершения функции выполнение кода продолжится с места вызова.
3. Если я вижу фразу goto, а метки не вижу, то куда перейдёт управление и к каким последствиям это может привести - совершенно непонятно.
Если метка буквально через пару строчек?

А перегрузка операторов с этой точки зрения - хорошая штука?

И кстати нет гарантий что функция не вызовет исключение, а обработчик объявиться совсем в другом месте
источник