之前读设计模式的时候突然看到这样的两个词语,心里咯噔了一下,没有能够一下反应出这个是什么意思,于是去google了一下。。瞬间觉得自己弱爆了,连这个都不知道。
在C++中,有纯虚函数和简单虚函数这一说。纯虚函数一般定义没有直接的定义,定义需要在子类中具体给出。而对于简单虚函数来说,如果你不想去重新定义的时候,直接继承基类的函数也是可以的。从某种意义上来说,继承的简单的虚函数可以理解成是子类中这个函数的默认实现,只有当这个类有不一样的实现的时候才需要去重新定义,否则就直接用就可以。
在面向对象中,我们常常会将类中共有的操作抽象成base class,。对于某些函数,如果我们希望在所有的类中都重新定义的话,就在基类中定义成纯虚函数,这样对于每个子类都需要给出重新实现的代码,这个就可以理解成是实现继承。如果某个函数在子类中不是全部都需要重新定义的情况下,我们就定义成一般的虚函数就好,这个就可以理解成是接口继承。
记录之,帮助自己以后学习。
参考链接:http://blog.csdn.net/zhaori/article/details/1700274