本来是照着一个视频教程学习,结果这个视频讲解的大哥特别喜欢调整方法顺序,而且手速特快,看的我花了眼,就这样调来调去,等到运行时发现一个问题,Tick方法里面的代码总是不执行,这个烂问题困扰了我两天,查不出任何问题。

        今天终于找到原因了,原来是把Tick放到了protected下面了,把Tick移动到public下面就都好了。应该是这样的,Tick的Super方法是public的,如果覆盖方法不能保持一致,那就不会执行。之前的关注点一致都在实现上,而没有在声明上,UC++坑真的多啊。

        问题当然是我眼花的问题,不过VS真的是不觉得这种子类和父类方法权限不一致的情况应该提示一下吗?

02-07 17:45