我刚刚在一个重要的代码库中更改了一堆虚拟方法以支持 64 位可移植性。我已经在代码库中进行了多次搜索,寻找需要编辑以更改虚拟函数参数类型的派生类。不幸的是,编译器(VS2013)没有警告我该函数的派生类版本具有错误的类型并且不会被调用。我一直在寻找我错过的实例。除了非常彻底之外,我还想运行一个工具来为我完成所有检查。
有这样的工具吗?
最佳答案
有一个更简单的解决方案:使用 override
specifier 。如果在子类虚函数末尾添加override
,那么当你改 rebase 类虚函数的参数时,就会出现编译错误,除非你也改变子类虚函数。
您还可以使用final
specifier表明虚函数不能由子类实现。
关于c++ - 是否有一个 lint 工具可以检查子类虚函数是否与父类定义匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45271947/