我的意思是:既然我已经重载了拷贝控制函数/运算符,为什么还要保留编译器自动生成的合成拷贝控制呢?
ringa_lee
個人覺得,有時候重載拷貝構造函數/運算符是為了說明在創建類別的時候已經考慮到了拷貝控制的相關功能,當編譯器合成的拷貝控制功能滿足需要的時候,使用=default就不用自己寫一遍了。如果今後類別新增了其他資料成員,需要自訂拷貝控制時,就不需要再加入拷貝建構函數/運算符,而只需要修改現有的就行了。
=default
相當於if...else if...else...中最後那個else.意義是一樣的
個人覺得,有時候重載拷貝構造函數/運算符是為了說明在創建類別的時候已經考慮到了拷貝控制的相關功能,當編譯器合成的拷貝控制功能滿足需要的時候,使用
=default
就不用自己寫一遍了。如果今後類別新增了其他資料成員,需要自訂拷貝控制時,就不需要再加入拷貝建構函數/運算符,而只需要修改現有的就行了。相當於
if...else if...else...
中最後那個else.意義是一樣的