
官方解釋,這類大小增加是因為第一個類別中的vptr需要8位元組對齊,進而導致編譯器對第二個類別進行填充。虛擬函式影響類別記憶體占用,在過去是難以觀察的細節,而Visual Studio 2022更新功能,使開發者不需要編寫額外的程式碼計算,只要透過簡單的滑鼠操作,即可查看隱藏的記憶體占用資訊。而清晰了解記憶體占用量和對齊方式,有助於開發者最佳化程式的效能和記憶體使用。
此外,Visual Studio 2022還加入了記憶體布局檢視圖,這項功能呈現類別、結構和聯合的記憶體排列方式,對於最佳化記憶體布局工作特別有用。開發者現在可以更直覺地查看類別中所有資料成員的填充、偏移和大小。
開發者只要將滑鼠游標停留在類別名稱上,無論是宣告還是定義,都會出現一個快速資訊工具提示,除了大小和對齊,也會出現記憶體布局連結,點擊連結開發者即可存取互動式記憶體布局檢視圖,開發者可方便地觀看單個資料成員具體偏移和大小。
而且該功能還提供COM類型的v-table記憶體布局檢視圖,協助開發者理解COM物件的基本結構和組織。微軟提到,這將有助於C++開發者提高程式效率和理解度,更容易管理記憶體和處理資料結構。