continue
обходит остальную часть блока и снова начинается в верхней части блока, если выполняется условие цикла.
Следующий вопрос: «Что мне делать, тогда? " Есть два ответа, которые я могу придумать.
Пример:
void foo ()
{
size_t i = 0;
do
{
/*...*/
if ( /*...*/ )
{
/*...*/
continue;
}
/*...*/
i++;
} while ( /* loop conditional */ );
}
Решение № 1: Ручное увеличение
void foo ()
{
size_t i = 0;
do
{
/*...*/
if ( /*...*/ )
{
/*...*/
i++;
continue;
}
/*...*/
i++;
} while ( /* loop conditional */ );
}
Решение №2: В этом случае действует однозначно допустимое применение goto
*
void foo ()
{
size_t i = 0;
do
{
/*...*/
if ( /*...*/ )
{
/*...*/
goto foo_next;
}
/*...*/
foo_next:
i++;
} while ( /* loop conditional */ );
}
goto
, поскольку инкремент в два места - технически одна и та же инструкция. Это решение особенно актуально, когда переменные, зависящие от итерации, более сложны; например, установка нескольких переменных или изменение значения с помощью уравнения или функции.
В случае одного оператора приращения или уменьшения, решение № 1 может оказаться благоприятным; однако следует отметить, что: если код был изменен после такой реализации, необходимо помнить об обновлении обоих экземпляров инструкции (которые могут быть подвержены ошибкам, особенно если изменения происходят через продолжительный период времени ** ). Поэтому я настоятельно рекомендую решение № 2.
* Некоторые считают, что всякое использование goto
плохой практики. Я рекомендую вам выбрать для себя и оставить это: google для «c goto bad»
** Комментарий, напоминающий об этой необходимости, может быть достаточным, но - если мой совет - переменные, зависящие от итерации, ограничены одним утверждением. И я цитирую:
Существует never причина прокомментировать одну строку
blockquote>-Linus Torvalds (источник: http://yarchive.net/comp/linux/coding_style.html )
Проверьте этот пост. has-text-centtered является классом, поэтому вам нужно присвоить этому конкретному классу свойство означает text-align: center; для выравнивания по центру, если вы хотите, чтобы текст слева, поэтому используйте text-align: left; для выравнивания по левому краю в классе has-text-left .
.is-multiline {
background-color: #00d1b2;
padding: 15px;
width: 100px;
color: #ffffff;
}
.has-text-centered {
text-align: center;
}
.has-text-left {
text-align: left;
}
.has-text-right {
text-align: right;
}
<div class="columns is-multiline">
<div class="column is-2"><p class="notification is-primary has-text-centered">Hello</p></div>
</div>
В классе уведомлений есть «padding: 1.25rem 2.5rem 1.25rem 1.5rem», вам нужно заменить его на «padding: 1.25rem 1.5rem 1.25rem 1.5rem».