default和delete
在C++中,有四類特殊的成員函數,分別為:默認構造函數,默認析構函數,默認拷貝構造函數,默認賦值運算符。他們的作用為創建、初始化、銷毀、拷貝對象。

雖然在類A中什么都沒有定義,但是編譯會通得過,因為編譯器會認為有必要,于是會為我們默認創建。
如果我不想要編譯器為我們創建,于是可以=delete函數,這樣編譯器就不會為我們創建:

這里不用關心權限問題,也就是不用關心是否為public還是private.
關于default:

等價于:

C++11中引入這個關鍵字,目前理解來看,就是少寫了中括號,具體深入的用途還有待發掘。
關于delete的應用,比如單例模式:

也就是只允許通過靜態的方式創建一次。

浙公網安備 33010602011771號