在 class 声明或构造函数初始化列表中初始化简单成员
Initialize simple members in class declaration or in constructor initializer list
哪个更好 - 在 class 声明或构造函数初始化列表中初始化简单类型成员?
class A {
// ...
private:
int m_member = 1;
// ...
}
或
A::A() : m_member(1) {
// ...
}
?
我认为在 class 当前标准中引入了初始化以增强可读性和一致性。
如果没有,您将需要注意每个构造函数中的一致初始化。
这样最好使用您建议的第一种形式:
class A {
// ...
private:
int m_member = 1;
// ...
}
哪个更好 - 在 class 声明或构造函数初始化列表中初始化简单类型成员?
class A {
// ...
private:
int m_member = 1;
// ...
}
或
A::A() : m_member(1) {
// ...
}
?
我认为在 class 当前标准中引入了初始化以增强可读性和一致性。
如果没有,您将需要注意每个构造函数中的一致初始化。
这样最好使用您建议的第一种形式:
class A {
// ...
private:
int m_member = 1;
// ...
}