Re: [問題] property/synthesize之後...
※ 引述《leondemon (狗狗)》之銘言:
: 用property/synthesize一個物件變數A之後 (nonatomic, retain)
: 為什麼在method當中要對A進行操作時
: 在set的語法必須要用 self.A = something
: 而不能直接用 A = something
其實可以,因為A還是你物件裡的一個變數,但是這邊牽涉到一個問題
A是什麼?
如果是簡單的資料型別,例如int float,那沒問題,可以直接設定
但是如果是物件,那就爆了,因為A是一個指標
直接寫 A = something 會改掉 A 指向的物件,所以原來指到的東西
就會變成無主孤魂,而且沒有release掉,會有leak。新的物件也因為
沒有retain,有可能會在別的地方被release掉,然後你的程式就bye了
: 可是get的時候可以直接用A (用self.A也可以)
: Why?
看得懂上面的話,為什麼這邊可以用就很明顯了。
所以基本上,請照規矩來,取資料用getter,設資料用setter,不要亂搞
--
Luna quieres ser madre
y no encuentras querer
que te haga mujer
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 112.104.95.143
推
12/22 23:26, , 1F
12/22 23:26, 1F
→
12/22 23:27, , 2F
12/22 23:27, 2F
→
12/22 23:32, , 3F
12/22 23:32, 3F
→
12/22 23:33, , 4F
12/22 23:33, 4F
→
12/22 23:33, , 5F
12/22 23:33, 5F
→
12/22 23:40, , 6F
12/22 23:40, 6F
→
12/22 23:41, , 7F
12/22 23:41, 7F
推
12/22 23:47, , 8F
12/22 23:47, 8F
→
12/22 23:48, , 9F
12/22 23:48, 9F
推
12/22 23:52, , 10F
12/22 23:52, 10F
→
12/22 23:53, , 11F
12/22 23:53, 11F
→
12/22 23:53, , 12F
12/22 23:53, 12F
→
12/22 23:54, , 13F
12/22 23:54, 13F
推
12/22 23:57, , 14F
12/22 23:57, 14F
→
12/23 00:20, , 15F
12/23 00:20, 15F
→
12/23 00:24, , 16F
12/23 00:24, 16F
→
12/23 00:24, , 17F
12/23 00:24, 17F
→
12/23 00:25, , 18F
12/23 00:25, 18F
→
12/23 00:25, , 19F
12/23 00:25, 19F
討論串 (同標題文章)
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章