C++繼承內存佈局 - 虛繼承下的多繼承情況

前面介紹了單繼承以及正常多繼承的內存分佈情況,最後介紹一種虛繼承的情況。同時虛繼承也是解決多繼承二義性的一種手段。 首先將代碼改動如下, Base1跟Base11是完全一樣的代碼,除了繼承的時候Base1是虛繼承,我們先看下單繼承的時候,虛繼承的內存分佈跟非虛繼承有什麼區別。 可以看到虛繼承的內存分佈要複雜的多。有兩個vftable以及一個vbtable。第一個表是Base1本身的,第二個虛表是父
相關文章
相關標籤/搜索