【发布时间】:2010-10-11 14:39:06
【问题描述】:
我有一个像这样的菱形多重继承场景:
A
/ \
B C
\ /
D
公共父级 A 定义了一个虚函数 fn()。
B和C都可以定义fn()吗?
如果是,那么下一个问题是——D 可以无歧义地访问 B 和 C 的 fn() 吗?我假设这有一些语法..
D 是否有可能在不明确知道 B 和 C 是谁的情况下这样做? B 和 C 可以被其他一些类替换,我希望 D 中的代码是通用的。
我想要做的是让 D 以某种方式枚举它在其祖先中拥有的所有 fn() 实例。这是否可能以其他方式表示虚函数?
【问题讨论】:
标签: c++ multiple-inheritance virtual-functions diamond-problem