在C++11中,可以在类定义中直接初始化成员变量。这样做可以使代码更加简洁和易读。下面是一个示例:
#include <iostream>
class MyClass {
public:
MyClass(){}
int getValue() const { return m_value; }
private:
int m_value = 0; // 在类定义中直接初始化成员变量
};
int main() {
MyClass obj;
std::cout << "Value: " << obj.getValue() << std::endl;
return 0;
}
在上面的示例中,`MyClass`类有一个私有成员变量`m_value`。通过在类定义中直接初始化`m_value`为0,可以避免在构造函数体内进行赋值操作,使代码更加简洁。
请注意,使用构造函数初始化列表还可以提高性能,因为它避免了额外的赋值操作。此外,对于常量成员变量或引用成员变量,只能使用构造函数初始化列表进行初始化。