摘要:
为了解决多继承下的二义性而设计的vitrul继承class Base{public: Base(void); ~Base(void);};Base::Base(void){ printf("Base::Base():%p\n",this);}class ChildFirst : ... 阅读全文
摘要:
比如。我们想实现一个Set类,而已经有一个List类可提供给你使用,我们到底用is-a(public继承)关系还是用has-a(组合)关系呢?1:如果使用is-a关系,则class Set:public List{。。。。};在处理插入的时候,List的insert方法不能满足我们的需要,因为它可以... 阅读全文
摘要:
切勿重新定义继承来的带缺省参数的函数。我们知道,继承来的函数是virtual 的,至于原因在上一节中已经说明了,即“切勿重新定义父类non-virtual函数”。所以确切的描述应该是“切勿重新定义继承来的带缺省参数的virtual函数”。因为缺省参数是静态绑定,而virtual是动态绑定。typed... 阅读全文
摘要:
子类如果重新定义了父类的non-virtual函数则不会有多态效果。为方便描述,这里的方法和继承方式都用public。至于原因嘛,你懂的!1:子类直接继承父类方法class BaseOption{public: void Function();};void BaseOption::Functi... 阅读全文