C++ 虚继承对基类构造函数调用顺序的影响-2
上一篇 /
下一篇 2012-10-09 10:44:21
/ 个人分类:C++
51Testing软件测试网;VK ?h5TYc)q 编译器提示调用f方法错误。而采用51Testing软件测试网:K(S TBT
J
_/tHhvi)[4_5L0
'G9X'_M wvjsh4K]0
51Testing软件测试网%c:X^e8qm R 编译通过,并且会调用istream类vptr指向的f()方法。 前面说了这么多,在实际的应用中虚拟继承的胡乱使用,更是会导致继承顺序以及基类构造顺序的混乱。如下面的代码:
6e0OM0Hi Gg*w5TP6xr0
51Testing软件测试网u6I1a}Xws9f2y\&A
51Testing软件测试网ED$q/f/S hV4pX,~
\
}d{8ePK pMMQ0class B1 O!nY1|1~z
dL0{ 1Hc d.c/Cs8g5t0public: j
zi$W7a0 B1(){cout<<"B1::B1()!<"<<endl;}51Testing软件测试网
ZK5bj7X_JM void f() {cout<<"i'm here!"<<endl;} vY5wi:H8L;q
G
Ls0}; 4_6U^Jj2YX!?J0
51Testing软件测试网(Q3Z7Z'Wfclass V1: public B151Testing软件测试网-zsmP{.k {51Testing软件测试网 u(sM$LE.\s/{ public: TV2o;Y:l{+J.FI;fD0 V1(){cout<<"V1::V1()!<"<<endl;} 9_8_o9l$SZ)h0}; |