Можно ли использовать goto для разрыва вложенных циклов?
JavaScript поддерживает goto-подобный синтаксис для разрыва вложенных циклов. В целом это не очень хорошая идея, но она считается приемлемой практикой. C # не поддерживает напрямуюbreak labelName
синтаксис ... но он поддерживает печально известнуюgoto
.
Я считаю, что эквивалент может быть достигнут в C #:
int i = 0;
while(i <= 10)
{
Debug.WriteLine(i);
i++;
for(int j = 0; j < 3; j++)
if (i > 5)
{
goto Break;//break out of all loops
}
}
Break:
По той же логике JavaScript, сценарий с вложенным циклом приемлемое использованиеgoto
? В противном случае я знаю, что для достижения этой функциональности я могу толькоbool
с соответствующей областью применения.