如果一个类C继承了A和B,并且AB拥有一个同名同类型函数。而C没重写AB这个函数时,该会继承哪一个呢? 还是连个都继承?如果两个都继承,该如何调用? 看下面的例子代码: #include <iostream> using namespace std; // 类 A class A { public: void show(){ cout<<"in A."<<endl; } }; // 类 B class B { public: void show(){ cout<<"in B."<<endl; } }; // 类 C 继承自 A 和 B class C :public A ,public B { public: void show(){ cout<<"in C."<<endl; } }; // 入口函数 int main(int argc,char **argv) { C c; // 调用 A 声明的函数 c.A::show(); // 调用 B 声明的函数 c.B::show(); // 调用 C 自己的函数 方式1 c.C::show(); // 调用 C 自己的函数 方式2 c.show(); return 0; } 是不是很诡异?~