Предполагая, что у меня есть этот псевдокод:
bool conditionA = executeStepA();
if (conditionA){
bool conditionB = executeStepB();
if (conditionB){
bool conditionC = executeStepC();
if (conditionC){
...
}
}
}
executeThisFunctionInAnyCase();
Функции executeStepX
должны выполняться тогда и только тогда, когда предыдущее выполняется.
В любом случае функцию executeThisFunctionInAnyCase
следует вызывать в конце.
Я новичок в программировании, поэтому извините за самый простой вопрос: есть ли способ (например, в C/С++), чтобы избежать этой длинной цепочки if
, производящей такую "пирамиду кода", за счет четкость кода?
Я знаю, что если бы мы могли пропустить вызов функции executeThisFunctionInAnyCase
, код можно было бы упростить как:
bool conditionA = executeStepA();
if (!conditionA) return;
bool conditionB = executeStepB();
if (!conditionB) return;
bool conditionC = executeStepC();
if (!conditionC) return;
Но ограничение - вызов функции executeThisFunctionInAnyCase
.
Может ли оператор break
использоваться каким-то образом?