如果变量的预期范围确实是局部的,那么对我来说保持这种方式才有意义。这就是我一直在做的。但是我最近在工作中从vim切换到eclipse,并且如果没有在构造函数中初始化每个成员变量,eclipse会标记我的构造函数。例如,在下面的代码中,它可以正常编译。 g ++没问题。另一方面,Eclipse告诉我,“ a”应在构造函数中初始化。
是否有任何原因可能导致此警告相关,或者仅值得一并忽略?
class C
{
public:
C(){}
~C(){}
void foo();
};
void C::foo()
{
int a;
}
int main() {
C c;
return 0;
}
最佳答案
另一方面,Eclipse告诉我,“ a”应在构造函数中初始化。a
无法在构造函数中初始化,因为它是成员函数C::foo()
的局部变量。 Eclipse给您一个虚假的警告。
关于c++ - 在类成员中初始化变量是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46958874/