#include <iostream>
using namespace std;
class Base
{
public:
Base()
{
Fuction();
}
virtual void Fuction()
{
cout << "Base::Fuction" << endl;
}
};
class A : public Base
{
public:
A()
{
Fuction();
}
virtual void Fuction()
{
cout << "A::Fuction" << endl;
}
};
void main()
{
A a;
system("pause");
}
//为什么答案不是A::Function A::Function 而是 Base::Function A::Function呢,原因是产生base这个基类时A还未构造,这怎么"虚"得过去呢?所以第一次就输出Base::Fu//nction第二次输出A::Function