Цитата:
Сообщение от
DSPIC
Можно-то можно, и в С оператор goto использовать никто не запрещает, но правильнее было бы (это моё субъективное мнение) поставить более красивое условие выхода из цикла вместо использования break, который часто ломает логику. Я к тому чтобы использовать break, если уж без него никак, а не лепить где попало.
В тех же "Best Practices" от разработчиков Аксапты пишут, что рекомендуется прерывать блок обработки как можно раньше. И желательно обходиться без лишней лесенки в коде (высокой степени вложенности блоков).
Так что break и continue зачастую позволяют написать более легкий для чтения код. Что лучше:
X++:
for (int i = 0; i < m; ++i)
{
if (array[i] <= 0) continue;
// do something with array[i]
// lot's of code
}
// или
for (int i = 0; i < m; ++i)
{
if (array[i] > 0)
{
// do something with array[i]
// lot's of code
}
}
Огород в условии цикла совсем не улучшает читаемость кода. А главное помнить, что код для того, чтобы его
читать человеку.