虚基类

虚基类不允许初始化传递:

A{int I;

A(int i):I(i){}  }

 

B:public virtual A{int J;

B(int i,int j):A(i),J(j){} }

 

C:public virtual A{int K;

C(int i,int k):A(i),K(k){} }

 

D:C,B{}

 

下面这样是不行的

D(int i,int j,int k):B(i,j),C(i,k){}

 

 将使用A的默认构造函数,i 没有作用

 

正确的做法:

D(int i,int j,int k):A(i),B(i,j),C(i,k){}

posted on 2013-07-30 21:15  shoutcharter  阅读(125)  评论(0编辑  收藏  举报

导航