メモリ管理
よくわかってないけどとりあえず
はじめにViewDidLoadでMutableArrayをallocすると、
(@propertyもつくって落ちにくくする)
今回特にaddObjectは明示的にしてなくて、
よそからひっぱってきてそのまま値を入れて使っている場合、
途中で中身を入れ替えたいときに一旦からにする際、
①まず、「中身が入っている」という判定に、
1●if (self.array != nil){ と書くか
2●if ([self.array count] > 0) { と書くか迷った。
②次にその「中身を空にする」という作業で
1■self.array = nil; と書くか
2■[self.array removeAllObjects]; と書くか迷った。
結果、●のときは、
中身はたしかに入っているはずなのに、
2の判定式は通らないという現象が...なんでだろう。
だからとりあえず!=nilをつかった。
■のときは、ログを吐くと
1をつかうとself.array = (null)となっているのに対し、
2をつかうとself.array = ()となった。
addObjectsしてないからremoveは危険かも、と思ったけど
object自体はなくなりはしないみたい。
property効果かな。
このへん本当に難しくて違いがわからない(;_;)
結局どっちが使えばいいのかわからず、今のとこは2を使ってる。
誰か教えて...orz