如果变量的预期范围是真正的本地范围,那么保持这种方式只对我有意义。这就是我一直以来所做的。但是我最近在工作时从vim切换到eclipse,如果构造函数中没有初始化每个成员变量,eclipse会标记我的构造函数。例如,在下面的代码中,它编译得很好。 g ++没问题。另一方面,Eclipse告诉我'a'应该在构造函数中初始化。
为什么这个警告可能相关或者是否值得忽视所有警告?
class C
{
public:
C(){}
~C(){}
void foo();
};
void C::foo()
{
int a;
}
int main() {
C c;
return 0;
}
答案 0 :(得分:7)
另一方面,Eclipse告诉我' a'应该在构造函数中初始化。
a
无法在构造函数中初始化,因为它是成员函数C::foo()
的局部变量。 Eclipse正在给你一个虚假的警告。