[問題] 物件在函式參數列的生命週期

看板C_and_CPP作者時間14年前 (2010/03/23 22:34), 編輯推噓2(201)
留言3則, 2人參與, 最新討論串1/1
class A { int getData() {return 0;} } ; 假設今天class A的用法是這樣 foo( A().getData() ) ; 則在evaluate foo() 的參數時所產生的暫存A物件 其生命週期是到那裏為止啊? 測試的結果是在foo()被執行完以後 在這邊有幾個問題 1. 此結果是platform specific的嗎? 與calling convention有關嗎? 還是這是standard? 2. 如果是標準的話, 此例可由暫存物件的life cycle通則推論出嘛? 還是說這是關於暫存物件搭配function call的特殊規則? 謝謝囉 ^_^ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.70.98.161

03/23 22:38, , 1F
#1Ai4wiQO <= 這篇有提到
03/23 22:38, 1F

03/23 22:44, , 2F
好像有些不一樣耶,我的函式並沒有reference去指向暫存物件
03/23 22:44, 2F

03/24 08:28, , 3F
那A是啥.........?
03/24 08:28, 3F
文章代碼(AID): #1BgD5nOs (C_and_CPP)