读书人

关于虚函数的疑点

发布时间: 2012-08-07 14:54:47 作者: rapoo

关于虚函数的疑问

C/C++ code
class Base{public:virtual void Say(){ cout << "Base::Say() was invoked!"<<endl;}};class Derived : public Base{private:virtual void Say(){cout <<"Derived::Say() was invoked!"<< endl;}};//测试Base *p = new Derived;p->Say();//输出:Derived::Say() was invoked!

为什么结果是这个,请大神详细的讲解一下,其他需要的主意的地方还有哪些?
谢谢。

[解决办法]
http://blog.csdn.net/chgaowei/article/details/6427731这个讲的非常好
[解决办法]
http://www.cppblog.com/xczhang/archive/2008/01/20/41508.html这篇文章介绍虚函数,写的挺深入的。我刚看了一遍。子类重写了父类的虚函数,在虚函数表中,子类的方法就替换了原来同名的父类方法的位置。 不知道我表述的是否清楚。

读书人网 >C++

热点推荐