BG Development


Страници: (2) [1] 2   ( Първото ново мнение ) Reply to this topicStart new topicStart Poll

> Втори break в case.
code2
Публикувано на: 29-08-2019, 05:33
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 302
Регистриран на: 11.06.16



Конструкция от вида:
CODE

switch(...)
{...
 case ...:
 {...
  if(...) break;
  ...
 }
 break;
 ...
}

нормална ли е и ще се изпълнява ли коректно? За компилиране - компилира се.
PMEmail Poster
Top
Gamma Goblin
Публикувано на: 29-08-2019, 06:22
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 2780
Регистриран на: 21.02.18



QUOTE
return; return;
icon_lol.gif

Защо мислиш че не е ок ?

Това мнение е било редактирано от Gamma Goblin на 29-08-2019, 06:30


--------------------
https://www.rust-lang.org/
---
Хора, които са прекалено умни, за да се занимават с политика, са наказани да бъдат управлявани от глупаци.
---
Life is hard; it's harder when you're stupid.
---
Black metal is like coffee. You have to learn to drink it but when you get used to it, you just want it darker and darker
PMEmail PosterUsers Website
Top
Дон Реба
Публикувано на: 29-08-2019, 06:26
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 8290
Регистриран на: 11.11.06



нормална е и се ползва
PM
Top
SuN
Публикувано на: 29-08-2019, 07:18
Quote Post


Group Icon
Име:
Група: Администратор
Ранг: Почетен член

Мнения: 9186
Регистриран на: 27.01.05



При нас по-скоро не. Настройват се флагове дали да се изпълнява нещо или не - напомня на "може би" (maybe) идеята от fsharp/haskell. Ако нещо е истина, тогава да продължи да се изпълнява кода до края на спирачката, ако не - да скочи до спирачката без да изпълнява код.

Ама при нас масово функции връщат 0 независимо дали има грешка или не, защото ще се види веднага на екрана... Та не знам дали е добра практика. icon_smile.gif


--------------------
Само аз не троля.
PMEmail Poster
Top
THE STORM
Публикувано на: 31-08-2019, 15:46
Quote Post



Име:
Група: Потребител
Ранг: Старо куче

Мнения: 896
Регистриран на: 19.08.05



Т'ва е все едно да питаш дали може да има повече от един break във for/while или повече от един return във функция.
PMEmail Poster
Top
code2
Публикувано на: 02-09-2019, 15:53
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 302
Регистриран на: 11.06.16



QUOTE (THE STORM @ 31-08-2019, 15:46)
Т'ва е все едно да питаш дали може да има повече от един break във for/while или повече от един return във функция.

Не съвсем точно същото. Защото единият break е извън case блока (т. е. е точно след него), а другият си е вътре. При while всичко си е някъде вътре и там няма какво да се мисли...
PMEmail Poster
Top
THE STORM
Публикувано на: 02-09-2019, 20:14
Quote Post



Име:
Група: Потребител
Ранг: Старо куче

Мнения: 896
Регистриран на: 19.08.05



Само дето case блока завършва там където започва следващия case или края на switch блока. Вътрешни блокове има нужда да слагаш само ако дефинираш променливи, иначе можеш директно да си пишеш. Т.е. няма значение дали break-а е вътре или не.

Давам пак пример с циклите, ако имаш:
CODE

while( true )
{
   {
        if( something )
            break;
   }
   if( something_else )
       break;
   // more code...
}


Най-вътрешния break ще има същия ефект като и на най-външния, хич не го грее, че има допълнителен блок. icon_smile.gif
PMEmail Poster
Top
Gamma Goblin
Публикувано на: 02-09-2019, 20:25
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 2780
Регистриран на: 21.02.18



такива обърквания стават защото нямате дисциплината и ИДЕто да слагате скобите където трябва

Това мнение е било редактирано от Gamma Goblin на 02-09-2019, 20:25


--------------------
https://www.rust-lang.org/
---
Хора, които са прекалено умни, за да се занимават с политика, са наказани да бъдат управлявани от глупаци.
---
Life is hard; it's harder when you're stupid.
---
Black metal is like coffee. You have to learn to drink it but when you get used to it, you just want it darker and darker
PMEmail PosterUsers Website
Top
SuN
Публикувано на: 02-09-2019, 21:45
Quote Post


Group Icon
Име:
Група: Администратор
Ранг: Почетен член

Мнения: 9186
Регистриран на: 27.01.05



Няма объркване. Момчето се е панирало и не търпи да носи отговорност за бъговете, които пише. Затова търси успокоение тук.


--------------------
Само аз не троля.
PMEmail Poster
Top
code2
Публикувано на: 03-09-2019, 10:27
Quote Post



Име:
Група: Потребител
Ранг: Редовен член

Мнения: 302
Регистриран на: 11.06.16



QUOTE (THE STORM @ 02-09-2019, 20:14)
Само дето case блока завършва там където започва следващия case или края на switch блока. Вътрешни блокове има нужда да слагаш само ако дефинираш променливи, иначе можеш директно да си пишеш. Т.е. няма значение дали break-а е вътре или не.

Давам пак пример с циклите, ако имаш:
CODE

while( true )
{
   {
        if( something )
            break;
   }
   if( something_else )
       break;
   // more code...
}


Най-вътрешния break ще има същия ефект като и на най-външния, хич не го грее, че има допълнителен блок. icon_smile.gif

Тук показваш два вътрешни break-а. Единият с едно ниво по-навътре. Просто не си сложиш скобите на последния if!
PMEmail Poster
Top
1 потребители преглеждат тази тема в момента (1 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Страници: (2) [1] 2  Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2019 | BG Development | All Rights Reserved
RSS 2.0