devxlogo

Initializing a Const Member

Initializing a Const Member

Question:
I’m trying to initialize a const declared in a class. How do I do this?

This example fails:

 class MyClass {private:  const int A;}MyClass::MyClass () {  A = 1;}

Do you have an example that works?

Answer:
You cannot initialize a const member inside the constructor body. For this purpose, you have to use a member initialization list, as follows:

 class MyClass {private:  const int A;public:  MyClass::MyClass () : A(1) {}}

devx-admin

Share the Post: