面试题答案
一键面试在C++中,使用virtual
关键字声明虚基类。
以下是示例代码:
#include <iostream>
// 虚基类
class Base {
public:
Base() { std::cout << "Base constructor" << std::endl; }
~Base() { std::cout << "Base destructor" << std::endl; }
};
// 派生类1,继承自虚基类Base
class Derived1 : virtual public Base {
public:
Derived1() { std::cout << "Derived1 constructor" << std::endl; }
~Derived1() { std::cout << "Derived1 destructor" << std::endl; }
};
// 派生类2,继承自虚基类Base
class Derived2 : virtual public Base {
public:
Derived2() { std::cout << "Derived2 constructor" << std::endl; }
~Derived2() { std::cout << "Derived2 destructor" << std::endl; }
};
int main() {
Derived1 d1;
Derived2 d2;
return 0;
}