|
|
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
возник спор, на сколько плох break для выхода из цикла, блока? я использую break достаточно редко , и вот хочеться в большом цикле на основании условий выскочить из блока, коллега не рекомендует, ни чем не обосновывает. в конкретном случае если не использовать break и делать проверки, в простом выражении привести индекс к итоговому значению цикла, чтобы он сам остановился просто не получится, так как придется проверять еще десяток переменных, пока индекс по кругу дойдет к самому циклы и прекратит работать. и так, чам плох "Break;" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 10:21 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
yemets63, Ничем, городить чушь ничем не обосновывая может каждый... Даже я... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 10:23 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
yemets63, break - это бессмысленное разбазаривание циклов впустую. Хуже него только continue. Циклы надо доводить до конца. Вдруг в последних итерациях что-нибудь интересное встретится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 10:25 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
yemets63, https://delphicomponent.ru/546-procedura-break-i-operator-goto.html Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 10:29 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
yemets63, Плохо, это когда цикл ради break: Код: pascal 1. 2. 3. 4. 5. 6. Ну и большой цикл(если подразумевается что-то монструозное на несколько экранов) тоже не есть хорошо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 10:29 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
ma1tus, goto я использовал последний раз в Basic примерна эдак году в 1993 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 10:38 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
yemets63возник спор, на сколько плох break для выхода из цикла, блока? я использую break достаточно редко , и вот хочеться в большом цикле на основании условий выскочить из блока, коллега не рекомендует, ни чем не обосновывает. в конкретном случае если не использовать break и делать проверки, в простом выражении привести индекс к итоговому значению цикла, чтобы он сам остановился просто не получится, так как придется проверять еще десяток переменных, пока индекс по кругу дойдет к самому циклы и прекратит работать. и так, чам плох "Break;" ?есть у него одна проблема, большой исходник с break, а так же с Exit мешает бездумно копипастить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 12:51 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
yemets63в простом выражении привести индекс к итоговому значению циклаАсь? Это вы такое для for цикла придумали? zinpubПлохо, это когда цикл ради break: Код: pascal 1. 2. 3. 4. 5. 6. Иногда такой цикл сильно повышает читабельность кода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 14:02 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
[quot _Vasilisk_]yemets63в простом выражении привести индекс к итоговому значению циклаАсь? Это вы такое для for цикла придумали? zinpub Ну когда-то break-continue не было. Может это еще те "динозавры"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 15:01 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
настоящие пацаны для выхода из цикла бросают исключение!!111 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 15:13 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
Квейднастоящие пацаны для выхода из цикла бросают исключение!!111 или halt, да? Новички почитают и примут к сведению... к чему этот топик? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 15:18 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
yemets63возник спор, на сколько плох break для выхода из цикла, блока? На 0. yemets63коллега не рекомендует, ни чем не обосновывает. Поменьше слушайте всяких идиотов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 15:56 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
В С++ можно помечать функцию как "безвозвратную". Код: plaintext 1. Типа - после её вызова не стоит ждать продолжения и, стало быть, можно, например, особо не компилять код в строчках после точки вызова.... ...вот и нам бы циклы такие. безвозвратный цикл, в котором break запрещен. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 15:57 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
ёёёёёВ С++ можно помечать функцию как "безвозвратную" Мне иногда не хватает этого в дельфях - только не в варианте "помечать", а в варианте "оптимизатор проследил граф передачи управления". Не вижу причин плохо делать руками то, что элементарно делается автоматически. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 15:59 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
Кстати, хозяйке на заметку, функция IndexOf Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2019, 16:03 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
[quot zinpub]yemets63, Плохо, это когда цикл ради break: Код: pascal 1. 2. 3. 4. 5. 6. Ничего подобного. Если цикл можно прервать по десятку условий, что в until ставить-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 09:43 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
[quot Василий 2]zinpubyemets63, Плохо, это когда цикл ради break: Код: pascal 1. 2. 3. 4. 5. 6. Ничего подобного. Если цикл можно прервать по десятку условий, что в until ставить-то? В данном случае, я иллюстрировал использование Break = Goto[Until] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 10:01 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
Василий 2Ничего подобного. Если цикл можно прервать по десятку условий, что в until ставить-то? Я бы сделал функцию IsFinished ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 10:04 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
zinpubЯ бы сделал функцию IsFinished Которое будет проверяться в конце итерации. Тогда как Break прервет итерацию досрочно. Предложите добавить еще пару-тройку if в тело цикла? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 16:04 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, Я нигде не говорил, что Break нельзя использовать. Конечно если придумать мегацикл, то необходимо выходить Break'ом - но лучше, имхо, как-то разбивать подобные циклы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 16:23 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
круто, мы спорили меньше с коллегой. маленькие циклы ни когда не использую break а тут огромный, рожденный пару лет назад кем то, условие заказчика, что нужно добавить условие и если оно выполнено выходить, break было простым и лучшем решением. всем спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 16:30 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
zinpubКонечно если придумать мегацикл,Вот вам простейший цикл Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. сможете избавиться от break не ухудшив читабельность? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 17:19 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_zinpubКонечно если придумать мегацикл,Вот вам простейший цикл Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. сможете избавиться от break не ухудшив читабельность? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. или так: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. или даже так: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 17:40 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
собственно последний вариант элементарно уже приводится к Код: pascal 1. 2. 3. предварительно инвертировав результат в d2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 17:45 |
|
||
|
на сколько плох Break для выхода из блока
|
|||
|---|---|---|---|
|
#18+
В целом, что Break, что Continue, что даже Exit вполне можно использовать в циклах, не понимаю, почему это может считаться дурным тоном. Собственно как и goto - в крайне редких случаях код с goto получается читабельнее, но это только в специфических (библиотечного типа) алгоритмах (шифрование, какое-нибудь конвертирование/преобразование). Т.е. в тех случаях когда написал, оттестировал и забыл. В прикладных задачах, всё-таки, лучше разделять на мелкие куски и всё приводить к простым конструкциям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2019, 17:51 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39882584&tid=2038867]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
54ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 394ms |

| 0 / 0 |
