mirror of
https://github.com/Light-City/CPlusPlusThings.git
synced 2026-04-02 10:13:06 +08:00
update
This commit is contained in:
38
basic_content/sizeof/virinhe.cpp
Normal file
38
basic_content/sizeof/virinhe.cpp
Normal file
@@ -0,0 +1,38 @@
|
||||
/**
|
||||
* @file virnhe.cpp
|
||||
* @brief 虚继承
|
||||
* @author 光城
|
||||
* @version v1
|
||||
* @date 2019-07-21
|
||||
*/
|
||||
|
||||
#include<iostream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
class A
|
||||
{
|
||||
virtual void fun() {}
|
||||
};
|
||||
|
||||
class B
|
||||
{
|
||||
virtual void fun2() {}
|
||||
};
|
||||
class C : virtual public A, virtual public B
|
||||
{
|
||||
public:
|
||||
virtual void fun3() {}
|
||||
};
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
|
||||
/**
|
||||
* @brief 8 8 16 派生类虚继承多个虚函数,会继承所有虚函数的vptr
|
||||
*/
|
||||
cout<<sizeof(A)<<" "<<sizeof(B)<<" "<<sizeof(C);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user