1. 程式人生 > >面試題14——談談對拷貝建構函式和賦值運算子的認識

面試題14——談談對拷貝建構函式和賦值運算子的認識

拷貝建構函式和賦值運算子過載有以下兩個不同之處:
(1)拷貝建構函式生成新的類物件,賦值運算子不能;
(2)由於拷貝建構函式是直接構造一個新的類物件,所以在初始化這個物件之前不需要檢測原物件是否和新建物件相同,而賦值運算子則需要這個操作,另外賦值運算中如果原來的物件中有記憶體分配要先把記憶體釋放掉

當類中有指標型別的成員變數時,一定要重寫拷貝建構函式和賦值運算子,不能使用預設的。