if 语句不应为空
9.1.12 ID_if_emptyBlock
空的 if 语句或 else 子句无实际意义,往往是残留代码或功能未实现。
示例:
if (cond); // Non-compliant
if (cond) {} // Non-compliant
如果 if 语句没有 else 分枝,且其分枝为空,这样的 if 语句无任何意义,即使其条件有副作用,也不应继续保留该 if 结构。
又如:
if (cond) { // Non-compliant, empty
} else {
.... // Nonempty statements
}
应改为:
if (!cond) { // Compliant
....
}
或者添加注释说明为何为空:
if (cond) {
; // Compliant if reasonable comments are provided
} else {
....
}