Re: [問題] NSNumber的物件能夠改變值嗎?

看板MacDev作者 (狗狗)時間14年前 (2009/09/05 02:46), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/7 (看更多)
※ 引述《uranusjr (←這人是超級笨蛋)》之銘言: : 是的這沒錯, 所以要有 wrapper (也就是 NSNumber 的存在理由之一...) 不太懂什麼是wrapper (有沒有什麼關鍵字可以幫助google search?) : 如果要改也不需要用 mutable 吧 : 直接在改的 method 裡面把 pointer 移到另一個 NSNumber 物件就好了 : 而且其實這樣好像比較好... 我除了Obj-C外 唯一會的語言是Python (這兩個都是最近開始學的) 據我所知在Python中 變數都是物件 而同一個變數名稱的值還可以從integer改存float (雖然我不知道有沒有重新分配記憶體) 好處是使用起來更方便 : 我是不太清楚, 不過我看別人寫的 code 裡面, 在這種狀況都是這樣做 : 即使是 string 也都是用 immutable class 然後要改的時候再砍掉重練... : 我是這樣猜 (真的完全是猜的喔, 不負責) : 數字本來就沒有用 mutable class 的必要, 因為一旦改動就是整個都不一樣 : 不像 string 和 array 有那種抽掉其中幾個換幾個進去的特性 : 所以要改的時候直接砍掉重練效能還比較好 我不太懂為什麼要重新分配記憶體空間的方式 效能會比較好(我計概很爛)? 我原本以為直接改變物件的變數 (mutable) 效能會比較好 而且省記憶體空間... 還是我有理解有錯? Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.77.52.127 ※ 編輯: leondemon 來自: 203.77.52.127 (09/05 02:52)
文章代碼(AID): #1AeM1sPt (MacDev)
討論串 (同標題文章)
文章代碼(AID): #1AeM1sPt (MacDev)