一.简介
虚函数是C++中用于实现多态(polymorphism)的机制。核心理念就是通过基类访问派生类定义的函数。假设我们有下面的类层次:
class A
{
public:
virtual void foo() { cout "A::foo() is called" endl;}
};
class B: public A
{
public:
virtual void foo() { cout "B::foo() is called" endl;}
};
那么,在使用的时候,我们可以:
A * a = new B();
a-foo(); // 在这里,a虽然是指向A的指针,但是被调用的函数(foo)却是B的!
这个例子是虚函数的一个典型应用,通过这个例子,也许你就对虚函数有了一些概念。它虚就虚在所谓“推迟联编”或者“...[ 查看全文 ]