There is a class
class A { private: const int _NUM = 20; //... public: A(); //... }; A::A() { char arrTemp[_NUM]; //... } And the message that this can not be used in a constant expression and when trying to compile the error is added "The expression is not defined by a constant." The compiler reads the class definition from the header file and finds out that _NUM is a const int.
Please explain why it is impossible to do this.