全局对象只应为常量或静态对象
4.10 ID_nonConstNonStaticGlobalObject
非常量全局对象破坏了面向对象的封装理念,如果必须使用全局对象,应将其限定在文件范围之内。
本规则放宽了 ID_nonConstGlobalObject 的要求,对于 C++ 代码不建议选取本规则,对于 C 代码可酌情选取。
示例:
// In global scope
int foo; // Non-compliant
static int bar; // Let it go
const int baz = 0; // Compliant