警告:這是不是的一個What is object slicing?重複,我已經讀過它,它沒有說明我的問題複製構造函數缺少與對象切片有關嗎?
我的問題是:爲什麼是缺乏一個拷貝構造函數的基本問題關於對象切片的課程?如果我做類似
Base base;
Derived derived;
Base newbaseobj((Base)derived);
這是一個經典的切片問題!我不明白爲什麼或如何定義在基本用戶定義的拷貝構造函數將有助於
編輯:我問這是因爲這些問題的答案:https://stackoverflow.com/a/26040064/1938163和https://stackoverflow.com/a/26040050/1938163似乎暗示我需要定義/默認副本構造函數來處理對象切片
我不確定這個問題是否實際上是重複的,但如果切片是實際問題,那麼鏈接的問題應該有所幫助。關於析構函數/複製構造函數/賦值運算符:這稱爲「三項規則」,不是關於分片,而是關於資源(主要是指針)處理。 – stefaanv 2014-09-25 14:39:22
這不是重複的,絕對不會回答我的問題! – Dean 2014-09-25 14:43:05
你的意思是禁用/刪除複製構造函數等? – 2014-09-25 14:54:25