CodeQL 文档

条件语句的空分支

ID: cpp/empty-block
Kind: problem
Security severity: 
Severity: recommendation
Precision: very-high
Tags:
   - reliability
   - readability
Query suites:
   - cpp-security-and-quality.qls

点击查看 CodeQL 仓库中的查询

此规则查找作为条件语句的分支或循环体出现的空代码块。这可能表明代码维护不佳,或者由于未处理的情况而导致缺陷。在空主体中常见的是注释掉的代码。不鼓励使用注释掉的代码,它是缺陷和可维护性问题的来源。

建议

如果条件语句或循环是无用的,则将其删除。

如果 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
	}
}
  • ©GitHub, Inc.
  • 条款
  • 隐私