关于c++的虚函数的一些总结

来源:互联网 发布:新款java小轮车 编辑:程序博客网 时间:2024/05/21 23:23

对于什么时候子类会覆盖父类中的函数:

(1)如果子类的东西和父类是一样的,那么肯定是子类覆盖父类中的函数

(2)如果子类的函数和父类的函数一模一样,就是前面少了个virtual那么,子类还是覆盖父类的函数

(3)如果子类和父类的函数返回值不一样,那么子类是不覆盖父类的函数

(4)最纠结的应该算是对于参数含有默认值的情况,其实这个情况,在编译器中是认为是有参数的,并不是没有参数,所以如果不一样的话,那很显然是不一样的,但是对于子类和父类默认值不同是没有关系,因为这个东西在编译的时候只是认为他们有这样的一个参数而已。

(5)对于同一个函数,子类有virtual,而父类是没有virtual那么,这个情况的是认为他们是两个不同的函数。

 

原创粉丝点击