【发布时间】:2014-07-26 10:52:41
【问题描述】:
我有如下代码sn-p,想知道c++编译器选择哪个路径来继承成员。
class B
{
public:
void display()
{
cout << "B";
}
};
class B1 : virtual public B
{
};
class B2 : virtual public B
{
};
class C : public B1, public B2
{
};
int main()
{
C c;
c.display();
getchar();
return 0;
}
是否真的可以让编译器选择路径,如果有,请告诉。可能是一个基本问题,但请花一些时间。提前致谢。
【问题讨论】:
-
见“钻石问题”
-
“哪条路径”是什么意思?
B被继承一次,所以所有的路径都是一样的。
标签: c++ inheritance virtual