第一種方法:使用do while
do{
bool conditionA = executeStepA();
if (!conditionA) break;
bool conditionB = executeStepB();
if (!conditionB) break;
bool conditionC = executeStepC();
if (!conditionC) break;
}while(0);
executeThisFunctionInAnyCase();
bool conditionA = executeStepA();
if (!conditionA) break;
bool conditionB = executeStepB();
if (!conditionB) break;
bool conditionC = executeStepC();
if (!conditionC) break;
}while(0);
executeThisFunctionInAnyCase();
第二種方法:使用‘條件接力’
bool conditionA = executeStepA();
bool conditionB = false;
if (conditionA){
conditionB = executeStepB();
}
bool conditionC = false;
if (conditionB){
conditionC = executeStepC();
}
bool conditionD = false;
if (conditionC){
conditionD = executeStepD();
}

executeThisFunctionInAnyCase();
bool conditionB = false;
if (conditionA){
conditionB = executeStepB();
}
bool conditionC = false;
if (conditionB){
conditionC = executeStepC();
}
bool conditionD = false;
if (conditionC){
conditionD = executeStepD();
}

executeThisFunctionInAnyCase();
參考連接:
http://top.jobbole.com/4960/