類類型及空類內存佔用淺析

類定義僅提供該類的類型定義,不佔用內存空間,只有在定義了類的對象之後,編譯系統纔會給對象在內存中分配相應的內存空間,用以存放對象的數據成員值。

類是一種類型,sizeof(類)跟sizeof(int)相似,計算該類型實例化需要多少空間;

空類類型實例化,需要佔1個字節;虛繼承空類的空類,sizeof爲4,因爲涉及虛表。


空類類型爲什麼需佔一個字節,深度探索c++對象模型中是這樣說的:

那是被編譯器插進去的一個char ,使得這個class的不同實體(object)在內存中配置獨一無二的地址。
也就是說這個char是用來標識類的不同對象的
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章