Почему продолжение внутри цикла - плохая идея?

Дуглас Крокфод говорит, что, как правило, лучше continue внутри петли.

Почему продолжение считается плохим в цикле?

3 ответа

Использование continue будет означать, что у вас недостаточно условий, написанных на вашем while,

Вы должны вместо этого использовать if внутри вашего while цикл, или добавить условие в while петля.

Использование goto, break, continue, throw или return внутри тела цикла может также иметь нежелательный эффект. Вот еще один пример, когда элемент управления цикла и тело цикла тесно переплетены. Это пишет 1, 2 и 3 как прежде? Уверены ли вы?

int value = 1;
    for (;;++value)
    {
        cout << value << endl;
        if (value != 4)
            continue;
        else
            break;
    }

Возможно, вы думаете, что советовать вам не использовать операторы return в теле цикла слишком усердно. Я действительно это имею в виду? Да. Функции, которые возвращают что-то, должны делать это с помощью одного оператора return в самом конце функции. Вот несколько практических причин, почему:

Ссылка на сайт

Отказ от ответственности: не мой материал, я ссылался обратно на источник

Эффект continue как-то сопоставимо с goto в начале цикла. Это делает ваш код более сложным для понимания - как gotos.

Другие вопросы по тегам