#include<stream.h>
class A {
public:
void f() {cout<< 'a';};
};

class B:public A{
public:
void f() {cout<< 'b';};
};

// if not pointer the virtual does not work
void test(A *ta) { ta->f();}

main(){
A a;
test(&a);
B b;
test(&b);
}

// output aa

