0
我知道將派生對象分配給基礎對象時,會發生切片。派生類對象的第一部分將被複制到基礎對象。 這裏是我的問題:將派生類對象分配給基類對象(我的意思是對象分配,而不是指針)時會發生什麼
- 將vptr(虛擬表指針)複製到基類對象嗎?
- 如果vptr沒有被複制到基類對象(我猜,因爲對象賦值不會導致多態),爲什麼?有什麼規定可以支持嗎?
我知道將派生對象分配給基礎對象時,會發生切片。派生類對象的第一部分將被複制到基礎對象。 這裏是我的問題:將派生類對象分配給基類對象(我的意思是對象分配,而不是指針)時會發生什麼
不,不復制vtable指針。也不可能,因爲目標對象在賦值之前和之後都是真正的基類類型。
在切片對象上調用的虛方法將調用基類實現。