精易论坛

标题: 易语言bug,模块中派生类虚函数调用基类版本有bug [打印本页]

作者: 神女软件定制    时间: 2023-5-31 17:41
标题: 易语言bug,模块中派生类虚函数调用基类版本有bug
直接在源码中执行是没有问题





编译成模块之后,派生类中虚函数,调用基类的版本,会出现无法调用基类的版本,调用的还是当前派生类的
如下示例,导致死循环递归调用自己了



作者: 神女软件定制    时间: 2023-5-31 18:19
@冬夏 嗯,是这样处理的
作者: 冬夏    时间: 2023-5-31 18:37
神女软件定制 发表于 2023-5-31 18:19
@冬夏 嗯,是这样处理的


作者: 青舟    时间: 2023-6-1 01:25
小本本记下了
作者: glr9107    时间: 2023-10-9 22:30
感谢分享
作者: xiaole283    时间: 2023-11-10 02:43
话说这是替换基类中同名方法的写法,为什么在派生类再调用基类中同名方法?这本就不科学。从代码角度来说,既然替代了,就是递归自己了。
作者: 神女软件定制    时间: 2023-11-10 09:26
xiaole283 发表于 2023-11-10 02:43
话说这是替换基类中同名方法的写法,为什么在派生类再调用基类中同名方法?这本就不科学。从代码角度来说,既 ...

替换基类同名方法,这是面向对象的多态,叫重写,重写是可以调用基类方法的,C++用,base::方法(),C#用base.方法(),java用super.方法(),这不是科不科学的问题




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4