We know that private members of a class cannot be accessed outside of the class.
For example, there is the following simple class:
class ClxECS
{
private:
int iPrivate;
};
So the following function is not compiled:
void ECS_test()
{
ClxECS lx;
lx.iPrivate = 13;
cout << lx.iPrivate << endl;
}
However, we are not without the means to access the private members of the class.
In fact, the method is simple, just add the following line of code to the declaration of the class:
#define private public
Similarly, this method applies to the protection of members:
#define protected public
However, this is an informal means, it will destroy all the encapsulation of the class. In C + +, the presence of #define is also to be compatible with C. So it is only in very special circumstances that this informal approach is used to access the private or protected members of the class.