virtual derived class

Please consider the below program


#include<iostream.h>

class A
{
public:
int x,y;
A(){cout<<"\n DefaultConst A";}
A(int i, int j){cout<<"\n Parm const A"; x=i; y=j;}
};

class B : virtual public A
{
public:
int a, b;
B():A(150,170){cout<<"\n DefaultConst B";}
};

class C: public B
{};
int main()
{
A *ptr;
C *pobc=new C();
pobc->a=5; pobc->b=2;
printf("\n %d %d %d %d", pobc->x, pobc->y,pobc->a, pobc->b);
}


Output
------
DefaultConst A
DefaultConst B
0 0 5 2


Question
---------
1) Why doesn't the parametrized constructor of A called?
Topic archived. No new replies allowed.