记录一下天美1面的问题
多重继承时类型转化
#面试问题##C/C++##include <iostream> using namespace std; class A { A(); }; class B { B(); }; class C : public A, public B { public: C(); }; void fun1() { C* c = new C(); //c = static_cast<A*>(c); // 报错,因为不能这样转换类型 A* a = static_cast<A*>(c); // 子类转化为基类 B* b = static_cast<B*>(c); // 子类转化为基类 //B* b2 = static_cast<B*>(a); // 同类型不能转化 } int main() { fun1(); return 0; }