0
任何人都可以告訴我函數返回容器中元素的引用(例如Type&
)(例如boost::unordered_map
)是否安全?關於容器中元素的引用
如果我們能這樣做,爲什麼?因爲我認爲引用類型的工作方式與指針相同(糾正我,如果我錯了),並且容器中元素的內存地址可能會隨時間而改變,所以引用的內容不再是以前的內容。我對嗎?
如果可以,我們可以返回容器中元素的指針嗎?
我有這個問題,因爲我看到這發生在別人的代碼,它工作得很好......
那我怎麼知道引用是否失效。訪問該引用時會拋出運行時錯誤嗎? – user2100910 2013-03-02 20:32:57
@ user2100910:沒有編程方式要知道。如果你通過一個無效的引用來訪問某個東西,你可能會也可能不會看到一個運行時錯誤(這是未定義的行爲)。 – 2013-03-02 20:33:38