Приветствую.
Предположим, у вас есть следующий код:
void foo()
{
while (true)
{
if (some_condition)
{
// break or return?
}
// do stuff
}
}
Что бы вы написали вместо комментария -- break или return?
С одной стороны, идеология "один вход — один выход" имеет свои плюсы, однако в процессе поддержки данного кода после цикла может добавиться некоторый код, который изначально не планировалось выполнять при достижении some_condition.