请问在C++语言多重派生,对于其父类有何要求?

解决方案 »

  1.   

    我看过的C++语言书籍,当时好像也没有注意到,但可能是我粗心大意的结果,而且时间有点长了!
    这不,我在应聘的过程中,对方想我问了这个问题,我瞢了……我想CSDN网友中应该有高手的,所以就来这问问!
      

  2.   

    对于多重继承来说,理论上C++并没有限制,因此可以随意进行(这正是C++的强大所在)但是实际操作中,因为考虑到继承造成的构造和析构的复杂性(例如虚继承,例如父类有虚函数,甚至虚析构函数),虚表的复杂性(多继承时如何处理虚表中指针的安置,出现冲突怎么办?等等),以及类中静态数据成员的问题等等(详细可以看看Lipman的《Inside The C++ Object Model》)比较好的做法是将数据成员和接口函数还有通用实现细节(比如某个字串处理)分开,利用公有继承接口函数,利用普通继承数据成员,利用私有继承通用实现细节等等。
      

  3.   

    没什么关系。
    问一下
    class a : public b

    class a : private b

    class a : prtected b
    有什么不同啊。