1. 空類
C++標準規定類的大小不爲0,空類的大小爲1。
當類不包含 虛函數 和 非靜態數據成員 時,其對象大小也爲1。 如果在類中聲明瞭虛函數(不管是1個還是多個),那麼在實例化對象時,編譯器會自動在對象裏安插一個指針指向虛函數表VTable,在32位機器上,一個對象會增加4個字節來存儲此指針,它是實現面向對象中多態的關鍵。
一個類中,虛函數、成員函數(包括靜態與非靜態)和靜態數據成員都是不佔用類對象的存儲空間的。
對象大小 = 向虛函數表的指針的大小 + 所有非靜態數據成員大小 + Aligin字節大小(依賴於不同的編譯器)。