在c++中,成員變量和成員函數是分開存儲的。
隻有非靜态成員變量才屬于類的對象上
class Person
{
};
void test01()
{
Person p;
cout<<"size of p= "<<sizeof(p)<<endl;
}
空對象占用記憶體空間為1
c++編譯器會給每個空對象也配置設定一個位元組空間,是為了區分空對象占記憶體的位置
每個空對象也有一個獨一無二的記憶體位址
class Person
{
int m_A;//非靜态成員變量 屬于類的對象上
static int m_B;//靜态成員變量 不屬于類對象上
void func(){}//非靜态成員函數 不屬于類對象上
static void func(){}//靜态成員函數 不屬于類對象上
};
void test02()
{
Person p;
cout<<"size of p= "<<sizeof(p)<<endl;
}