急!!!
#include<iostream>using namespace std;
class A{
public:
virtual void a(){cout<<"A"<<endl;}
};
class B:public A{
private:
virtual void a(){cout<<"B"<<endl;}
};
int main()
{
A *p;
p=new B;
p->a();
return 0;
}//输出为B
这个程序怎么可以运行,怎么没出错呢?为什么可以访问私有成员函数呢?