3
在書中「C++併發在行動」附錄A.3,引入違約功能時,它說:即使使用用戶定義的構造函數,編譯器何時仍會生成默認構造函數?
正常情況下,如果你手動編寫任何其他構造函數,編譯器將不再產生你的默認構造函數,所以如果你想要一個你必須寫它,這意味着你失去了這個奇怪的初始化屬性。但是,通過顯式聲明構造函數爲默認值,您可以強制編譯器爲您生成默認構造函數,並保留此屬性。
這是否意味着仍然有某些情況下(除了加入=default
明確),編譯器仍然會產生即便是用戶定義的構造函數的默認構造函數?如果是的話,這些情況是什麼?或者只是我在這裏用言語挑剔。
不,它只是意味着它說什麼,即'= default'意味着這意味着什麼。 –