#include "f1.H"
int DoSomething( A *pa) {
// Cannot replace get_val with A::get_val
DoSomethingElse(pa->get_val());
}
<file f1.C>
class A {
int i;
public:
A(): i(0) {};
~A() {};
virtual int get_val() { return i; };
};
< file f1.H>
#include "f1.H"
class B: public A {
int j;
public:
B(): j(0) {};
~B() {};
virtual int get_val() { return j+2; };
};
<file f2.C>