#include <IOSTREAM.H>
//定义一个基类,模拟CWinApp
class Base
{
public:
Base();
// virtual void fn();/*测试虚函数结果:call the Derived's fn*/
void fn();/*测试非虚函数结果:call the Base's fn*/
Base *p;
};
Base::Base()
{
p = this;//this指针指向哪一个对象?答:指向派生类对象dd
}
void Base::fn()
{
cout << "call the Base's fn" << endl;
}
//定义一个派生类,模拟CTestApp
class Derived:public Base
{
public:
void fn();
};
void Derived::fn()
{
cout << "call the Derived's fn" << endl;
}
//定义一个派生类的全局对象,模拟theApp
Derived dd;
int main()
{
(dd.p)->fn();
return 0;
}