→ loveme00835:T newT = T(); 06/16 01:51
感謝 !!
所以代換回去就像是 int test = int(); 的意思嗎 ??
也就是 內建型別 + () 類似 class default constructor ?
※ 編輯: cory8249 來自: 140.114.221.54 (06/16 02:13)
→ loveme00835:此時會用 default ctor 建構一個暫時物件, 再呼叫 06/16 07:47
→ loveme00835:copt ctor 來拿暫時物件初始化 newT, 當然如果有作最 06/16 07:48
→ loveme00835:佳化的話, 可能變成 newT 直接以 default ctor 來建構 06/16 07:48
→ purincess:樓上的意思是return value optimization嗎@@? 06/16 15:32
→ Chikei:copy elision應用在copy ctor,RVO通常講的是另外的事。 06/16 15:53
→ purincess:了解! 06/16 16:30
→ purincess:查到了:D 謝謝 06/16 16:30
→ purincess:所以說~如果T()的ctor有side effect的話有可能side effe 06/16 16:31
→ purincess:ct會沒出來(因為被copy elide掉了?) 06/16 16:32