[疑惑]关于类继承问题
class A{
protected:
int i;
}
class B :public A
{
public:
void memfunc(const B& b,const A& a)
{
int j = a.i; //错误,A的对象不可以访问protected成员
int k = b.i; //为什么正确??
}
}
我的疑惑在于:
类B public继承过来类A的成员i,在B中的访问权限为proteced,按说B的对象是不可以访问i的,但在这里为什么可以?
希望知道的兄弟指教一下.