【发布时间】:2014-01-12 22:36:09
【问题描述】:
我朋友的教授正在教授 C++ 入门课程,并建议不要使用 break 语句。例如:
for (int i = 0; input != 'Q'; i++) {
cin >> input;
chararray[i] = input;
}
比明确的 if 检查要好:
if (input == 'Q')
break;
我不熟悉 C++ 标准,但是对于来自 Python 背景的我来说,这种隐式循环终止似乎很尴尬。必须在循环构造函数中还是在显式条件块中使用循环终止符更好?
【问题讨论】:
-
通常在表头,但在块中可以使其更具可读性。例如,如果检查应该在输入和分配之间,如果您希望它与第一个匹配,则需要一些东西。无论是
break还是只是围绕身体其他部位的if都是一种选择。 -
我教你应该尽可能在循环头(或带有 do...while/until 的页脚)中进行测试,但是在这样做时放弃需要引入额外的(通常是布尔值)变量和/或条件。但这是一个见仁见智的问题,SO 上不赞成意见问题。
标签: c++ coding-style standards