sizeof計算類大小

 

1. 空類
 

C++標準規定類的大小不爲0,空類的大小爲1。

當類不包含 虛函數 和 非靜態數據成員 時,其對象大小也爲1。 如果在類中聲明瞭虛函數(不管是1個還是多個),那麼在實例化對象時,編譯器會自動在對象裏安插一個指針指向虛函數表VTable,在32位機器上,一個對象會增加4個字節來存儲此指針,它是實現面向對象中多態的關鍵。

 

 


一個類中,虛函數、成員函數(包括靜態與非靜態)和靜態數據成員都是不佔用類對象的存儲空間的。

對象大小 =   向虛函數表的指針的大小   +   所有非靜態數據成員大小   +   Aligin字節大小(依賴於不同的編譯器)。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章