Правила программирования на Си и Си++

       

Избегайте циклов do/while


Цикл do/while

опасен в принципе, так как вы обязательно выполняете его тело хотя бы один раз. Следовательно, вы должны проверить условия завершения до входа в этот цикл. Я часто вижу код, похожий на следующий:

if( !проверить_нечто )

    return ERROR;

do

{

    начинка();

} while( проверить_нечто );

Вам гораздо лучше сделать так:

while( проверить_нечто )

    начинка();

Похожий случай:

if( некое_условие() )

    do

        // масса материала

    while( некое_условие() другой_материал() );

легче трактовать следующим образом:

while( некое_условие() )

{

    //   масса материала

    if( !другой_материал() )

        break;

}

Я профессионально занимаюсь программированием с 1979 года и за это время использовал цикл do/while всего два раза.




Содержание раздела