你试试就知道了,因为当发生你说的那种情况,编译器会对继承关系的模糊性报错。小弟n年前一直是用c++的,对这个门儿清。
一个普遍的解决办法就是虚拟继承,也就是说,B和C在继承A的时候都用virtual方式。
当然,最实际的办法就是改用接口,这个是最根本和有效的办法。A,B,C全都设计成接口,需要任何一种类,只需要实现相应接口就行了,这个是当年所有系统分析员公认的。
你试试就知道了,因为当发生你说的那种情况,编译器会对继承关系的模糊性报错。小弟n年前一直是用c++的,对这个门儿清。
一个普遍的解决办法就是虚拟继承,也就是说,B和C在继承A的时候都用virtual方式。
当然,最实际的办法就是改用接口,这个是最根本和有效的办法。A,B,C全都设计成接口,需要任何一种类,只需要实现相应接口就行了,这个是当年所有系统分析员公认的。
•
多重继承带来的风险问题远大于其利益,用接口Interface或抽象abstracut,虚拟virtual的方式更好
-企鹅肥肥-
♂
(158 bytes)
()
03/19/2011 postreply
18:37:42
•
我觉得应该叫多父继承更好些。
-企鹅肥肥-
♂
(0 bytes)
()
03/19/2011 postreply
18:43:46
WENXUECITY.COM does not represent or guarantee the truthfulness, accuracy, or reliability of any of communications posted by other users.
Copyright ©1998-2025 wenxuecity.com All rights reserved. Privacy Statement & Terms of Use & User Privacy Protection Policy