5:当有静态变量时候
#pragma once
class TestClass
{
public:
TestClass(void);
~TestClass(void);
private:
char c;
int b;
static int m;
};
结果:sizeof(TestClass) = 8
原因:静态变量不占用类对象的内存
6:当有虚函数
#pragma once
class TestClass
{
public:
TestClass(void);
virtual ~TestClass(void);
private:
char c;
int b;
};
结果:sizeof(TestClass) = 12
原因:此时类对象内部有一个指向虚函数表的指针,这个指针会占用4个字节的内存。