Class sizes with virtual inheritance in C++

前端 未结 5 1999
[愿得一人]
[愿得一人] 2021-01-02 20:48
#include

using namespace std;

class abc
{
    int a;
};
class xyz : public virtual abc
{
    int b;
};

int main()
{
    abc obj;
    xyz obj1;
            


        
5条回答
  •  情话喂你
    2021-01-02 21:10

    The program when run in CodeBlocks Compiler gives 4 12 as output This can be explained as; for base class size of object is equal to size of int. For derived class; size of object = size of the class + size if base class + size of virtual base pointer(4).

提交回复
热议问题