条件语句的空分支¶
ID: cpp/empty-block
Kind: problem
Security severity:
Severity: recommendation
Precision: very-high
Tags:
- reliability
- readability
Query suites:
- cpp-security-and-quality.qls
此规则查找作为条件语句的分支或循环体出现的空代码块。这可能表明代码维护不佳,或者由于未处理的情况而导致缺陷。在空主体中常见的是注释掉的代码。不鼓励使用注释掉的代码,它是缺陷和可维护性问题的来源。
建议¶
如果条件语句或循环是无用的,则将其删除。
如果 if
语句的 only-else 分支为空,则将其省略。如果 then 分支为空,则反转条件的含义。
示例¶
void f(int i) {
if (i == 10); //empty then block
... //won't be part of the if statement
if (i == 12) {
...
} else { //empty else block, most likely a mistake
}
}