#include <cstdlib>
#include <iostream>
class A{
public:
int a;
virtual void f() {printf("Called from A\n");};
A(int j){
a = j;
printf("A initialize = %d\n", a);
}
};
class B: public A{
public:
int a;
virtual void f() {printf("Called from B\n");};
B(int j) : A(j)
{
a = j;
printf("B initialize = %d\n", a);
}
};
int main()
{
A *a = new B(1024);
a->f();
a = new A(a->a/100);
a->f();
a->A::a = 10;
printf("\n\n\n%d\n\n\n", a->A::a);
getchar();
}
Comments