#include<iostream> using namespace std; class Base1{ public: Base1(){ cout<<"Base1()"<<endl; } Base1(int a):base1a(a){ cout<<"Base1(int)"<<endl; } private: int base1a; }; class Base2{ public: Base2(){ cout<<"Base2()"<<endl; } Base2(int b):base2a(b){ cout<<"Base2(int)"<<endl; } private: int base2a; }; class Derived:public Base1,public Base2{ public: Derived(int a,int b):Base1(a),Base2(b),base1(a),base2(b){} private: Base1 base1; Base2 base2; }; int main(){ Derived d(2,3); }
输出结果:
Base1(int)
Base2(int)
Base1(int)
Base2(int)
请按任意键继续. . .
输出结果分析:
Base1 和Base2的默认构造函数不运行
原文:http://blog.csdn.net/sxhlovehmm/article/details/44598021