1.final

保证子类无法重写一个函数的方法:即在这个函数后面加上final. 看下图。

C++的final与override

当然也可以加在类名后面,此时会保证此类不能被继承。

C++的final与override

2. override

当子类重写父类中的函数,那么在子类的函数后面加上override,这样编译器会做名称和函数参数的检查。

override保证了这个函数定会重写基类中的函数,不然报错。

C++的final与override

这个可以发现,当函数名相同,参数类型不同,编译器就会报错。

C++的final与override

这个可以发现,无论你变成啥样的函数,只要你后面加了override你必须是重写父类的函数。

相关文章: