关于重写,重载,覆盖的一点体会

来源:互联网 发布:linux 查看隐藏文件 编辑:程序博客网 时间:2024/06/07 18:20

首先重写是子类对父类的函数的重新实现,它要求函数、参数必须一样。他是在不同的类里面,而重载时在同一个类种对于一个函数根据不同的输入参数,实现不同的功能,他要求函数名一样,但是输入参数不同。覆盖是子类对于父类的虚函数的重新实现。

另外,当定父类指针指向子类对象的地址时,如果调用的是一般的方法,即使那个方法已经被子类重写了,此时仍然调用父类的方法,但是需要调用的方法是虚函数,那么此时调用的便是子类对象所实现的虚函数了。因为虚函数是覆盖,在虚函数所指向的内存中已经没有父类的那个虚函数了,所以此时只能调用子类的虚函数。

0 0