#include <iostream.h>
class B
{
public:
virtual void f(int i);
virtual void f(long L);
virtual void f(char *up);
};
void B::f(int i)
{
cout << "B::f(int i = << i << ")\n";
}
void B::f(long L)
{
cout << "B::f(long L) = " << L <<")\n";
}
void B::f(char *p)
{
cout << "B::char *p = \"" << p << "\")\n";
}
class C : public B
{
public:
void f(int i); // virtual
};
void C::f(int i)
{
cout << "C::f(int i = "<< i<<")\n";
}
class D : public C
{
public:
void f(long L); // virtual
};
void D::f(long L)
{
cout << "D::f(long L = "<< L <<")\n";
}
// End of file