求下面程序的输出值:
class A{
public:
A() {func(0);};
virtual void func(int data) {printf("A1 :%d\n",data);}
virtual void func(int data) const {printf("A2 :%d\n",data);}
void func(char *str) {printf("A3 :(%s)\n",str);}
};
class B:public A{
public:
void func() {printf("B1 :%s\n","");}
void func(int data) {printf("B2 :%d\n",data);}
void func(char *str) {printf("B3 :(%s)\n",str);}
};
int main()
{
A *pA;
B b; // A1:0
const A *pcA;
pA=&b;
pA->func(1); &nb