#include<iostream>
using namespace std;
class S
{
};
class A:public S
{
public:
virtual void Func()
{
cout<<"this is A func"<<endl;
}
};
class B:public A
{
public:
virtual void Func()
{
cout<<"this is B func"<<endl;
}
void SubFunc()
{
Func();
}
};
class C:public A
{
public:
void Func(){cout<<"this is C func"<<endl;}
void SubFunc(){Func();}
};
int main()
{
A* pa=new A();
A* pb=new B();
A* pc=new C();
pa->Func();
pb->Func();
pc->Func();
((B*)pb)->SubFunc();
((C*)pc)->SubFunc();
int a=sizeof(A);
int b=sizeof(B);
int c=sizeof(C);
cout<<a<<" "<<b<<" "<<c<<endl;
return 0;
}
虚函数占用内存
最新推荐文章于 2023-04-17 16:50:36 发布