有时必须执行一系列 if/else 检查。在过去,goto 是执行此操作的标准工具。
由于 goto 在许多代码风格指南中都是禁止的,我有时会使用循环作为替代,例如:
do
{
if (a)
{
doA();
break;
}
//...
if (z)
{
doZ();
break;
}
}while(false);
//all break jump here
这是一个好的方法吗?是否有一个好的 C++ 模式(例如,使用模板、继承等)来实现它而不需要太多开销?
最佳答案
由于条件似乎无关,else if
是一个选项:
if (a) {
doA();
} else if (b) {
//...
} else if (z) {
doZ();
}
关于c++ - "Abusing"减少 if 嵌套的循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33342997/