继承自两个基类??
C++中一个类可以继承自两个基类,D里貌似不行~~
要实现类似的功能,怎么弄?
网上查了下,
有人说,这样弄 :(假设两个基类是 TBaseA、TBaseB,派生类是 TMy),从TBaseA派生,然后 在 TMy 的成员里加入 TBaseB 的实例 ... 这样 多态等等的事情就没办法了... 不太喜欢这样的方式...
还有人说 ,用接口的方式 ,但是 接口 不太会弄... 接口 弄出来 多态 等特性还能有么???
请指教下 ,希望给点简单的示例代码,谢谢~~~
[解决办法]
不能多重继承,可以接口变通的实现
[解决办法]
IA,和IB,分别实现A和B的接口,然后C继承自 IA,IB,那么在C中必须实现IA和IB的接口就是了
[解决办法]
delphi 2006以后 有Class Helpers
可以看看 也不错的。。
http://topic.csdn.net/t/20060522/16/4770149.html
[解决办法]
这些内容在《Delphi 7高级应用开发教程》里面有。
[解决办法]
不支持多继承啊, 如果需要还是使用接口吧,支持实现多接口,只能单继承 ;
[解决办法]
Delphi不支持多继承, 如果编程需要,可以通过接口,以多接口形式实现。
[解决办法]
抽象类里可以有抽象数据成员,接口只能包含方法吧?(错了的话抱歉,我不用接口。因为我感觉多重继承一点实用价值都没有,不允许是应该的,好多书都讲写代码时不够小心的话多重继承可能出现啥问题。。)
[解决办法]
对了,接口可以包含常量。不过我感觉应该不允许别的数据成员
抽象类可以有数据成员,放在具体类里再用。。
[解决办法]
建议使用接口
[解决办法]
接口是必须实现的
4楼前面的那部分!
后面的是另外的方法!
比方 TA.TB(TB的实例化对象).TB的方法!
在TC类里面同时提供TA与TB类的方法,然后分别调用各自的方法,
这个不强制实现的,用到哪个就可以公布那个方法