#include using namespace std;

class A { protected: int a; public: A() { a = 1; cout << "Initializing A." << endl; } };

class D1: virtual public A { public: D1() { a = a + 1; } };

class D2: virtual public A { public: D2() { a = a + 3; } };

class B: public D1, public D2 { public: B() {} void show() { cout << "a = " << a << endl; } };

int main() { B b; b.show(); return 0; }

#include iostream使用命名空间标准;A类 保护:国际 a;公共:A a = 1; cout initializing A endl;;D1类:虚拟公共A公共:D1 a=a+1;;D2 类:虚拟公共 A 公共:D2 a = a + 3;;B类:公共D1公共D2公共:B void show cout a = a endl;;int main乙b;bshow;返回 0

原文地址: https://www.cveoy.top/t/topic/hvio 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录