首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

多重继承、杜撰继承

2012-09-14 
多重继承、虚拟继承C/C++ codeclass Base{public:Base(int val){}Base(float val}{}}class A:public Base{

多重继承、虚拟继承

C/C++ code
class Base{public:Base(int val){}Base(float val}{}};class A:public Base{public:A(int val):Base(val){}};class B:public Base{public:B(float val):Base(val){}};class AB:public A ,public B{public:AB(int val, float val2):B(val2),A(val){}};//看第二个例子class A:public virtual Base{public:A(int val):Base(val){}};class B:public    virtual  Base{public:B(float val):Base(val){}};class AB:public A ,public B{public:AB(int val, float val2):B(val2),A(val){}};第二个例子有什么问题呢?


[解决办法]
探讨

//看第二个例子
class Base
{

public:
B (int){}
B(float){}

};


class A:public virtual Base
{
public:

A(int val):Base(val){}
};


class B:public virtual Base
{
public:
B(float va……

[解决办法]
自己去看看你发的帖子,第二个例子里根本就没贴出base类,一样不一样我们怎么可能看得到。
[解决办法]
虚拟继承要求只有一份基类的实体,第二个例子,分别用int,float构造了两个基类的实体。。。。
[解决办法]
虚拟继承要求只有一份基类的实体,第二个例子,构造了int,float两个基类实体

热点排行