#include <iostream>
using namespace std;
class Father {
public:
virtual void print() {
cout << "Father class" << endl;
}
};
class Son : virtual public Father {
public:
void print() override {
cout << "Son class" << endl;
}
};
class Son1 : virtual public Father {
public:
void print() override {
cout << "Son1 class" << endl;
}
};
class Son2 : public Son, public Son1 {
public:
void print() override {
std::cout << "Son2 class" << std::endl;
}
};
int main() {
Son2 s;
s.print(); // 输出 "Son2 class"
return 0;
}