Correct Answer (Detailed Explanation is Below)
A.
Because a const member cannot be assigned a value after its initialization
Detailed Explanation
Answer: (A) Because a const member cannot be assigned a value after its initialization
A const data member must receive its value during initialization. It cannot first be created and then assigned a value inside the constructor body.
Therefore, a constructor initializer list is normally used.
Example:
class Test {
const int x;
public:
Test(int n) : x(n) { }
};
Trying to assign x = n; inside the constructor body would not correctly initialize the const member.