我想知道为什么类的常量数据成员需要在构造函数中初始化,为什么不在其他地方初始化?这样做和不这样做有什么影响?
我还看到只能在类内部初始化静态常量整数数据,而不是在类内部初始化非数据成员。
例如:-假设下面是我的班级声明
class A{
int a; // This we can initialize at the constructor or we can set this member by calling "vSet" member function
const int b;
static const int c = 10; //This works fine
public:
A();
~A();
void vSet(int a);
int iAdd();
void vDisplay();
};
构造函数定义如下:-
编辑部分:由于之前的构造函数定义示例是错误的
A::A():a(1),b(9){}
如果我错了,请纠正我。提前致谢。