Очень не люблю серию вложенных условий в друг друга:
if(условие1)
{
if(условие2)
{
if(условие3)
{
if(условие4) ...
{
}
}
Получаем быстрорастущую пирамиду в бок в которой уже сложно отследить, где начинается один блок, а где второй. Моя мечта, чтобы можно было писать так:
if(условие1)
{
if(!условие2) breakif;
if(!условие3) breakif;
if(!условие4) breakif;
...
}
Январь 22, 2009 в 11:23 пп
ты где столько их нарыл?
Январь 23, 2009 в 7:36 пп
Как насчет такого кода
bool some_function()
{
if(conditionOneNotTrue)
return false;
DoSomeStuff();
if(conditionTwoNotTrue)
return false;
DoAnotherStuff();
if(conditionThreeNotTrue)
return false;
.......
return true;
}
В Си такой код не всегда удобен если есть необходимость освобождения ресурсов, но в С++ RAII решает эту проблему за тебя.
Январь 23, 2009 в 7:50 пп
Я использую. Но это как-то ненаглядно для меня.
do {
if(!conditionOne) break;
if(!conditionTwo) break;
if(!conditionThree) break;
…
} while(false);
Февраль 21, 2009 в 9:17 дп
Побольше б таких штук