[英]How instances of virtual base class are available to derived class?
虛擬基類的實例如何可用於派生類,如何在以下代碼中實現?
class A
{
public:
void test();
};
class B : virtual public A
{
};
class c : public A
{
} ;
class D : public B, public C
{
};
查看帶有正確版本的題寫注釋:
class A
{
public:
void test();
};
class B: virtual public A // A is a virtual base class
{
};
class C : public A // C is a base class of A
{
} ;
class D: public B, public C // D has two base classes B and C
{
};
通過繼承,D可以得到A的兩個副本,一個通過B,一個通過C,如果您聲明了以下信息,則您在D中可能只有A的一個共享副本:
class C : virtual public A // C is a virtual base class of A
{
} ;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.