看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《lovejomi (JOMI)》之銘言: : 雖然說reference 可以當作non null去操作 : 但有心要傳*null也不是不行. : 開reference 給別人傳,比起pointer更有機會caller不小心傳入local variable : 以上都可以用一句話“哪有人會這樣寫”來否定用pointer存. 寫函式庫必須假設使用者都是智障 或者未來寫code的人都是智障 "哪有人會這樣寫" 並不成立 不要說有心要傳 連誤傳都要避免 設計成 Falling Into The Pit of Success 才是正確的 所以請愛用推文的smart pointer搭配推文的std::function template<typename ...InTypes> using ForCallback = ::std::shared_ptr<::std::function<void(InTypes...)>>; 我認為stackoverflow這篇不錯 https://stackoverflow.com/questions/33562942/ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.46.79.21 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1532827612.A.227.html ※ 編輯: KanzakiHAria (114.46.79.21), 07/29/2018 09:42:29