LoginSignup
2
1

More than 5 years have passed since last update.

メモリ管理.releaseかautoreleaseか

Last updated at Posted at 2014-02-07

自分でreleaseか、autoreleaseか。

所有権のあるオブジェクトは自分でreleaseしなくてはいけない。

どうやって所有権を持つか?

以下のメソッドで初期化したオブジェクトは、自分が所有権を持つ。

  • alloc
  • new
  • copy
  • mutableCopy

For example

[[NSmutableArray alloc] init];
allocしているので、自分でreleaseしなくてはいけない。

[[NSmutableArray alloc] initWithObjects: _, _, nil];
allocしているので、自分でreleaseしなくてはいけない。

[NSmutableArray arrayWithObjects: _, _, nil];
objectが勝手にreleaseしてくれる。

注意

所有権を持たずに生成したオブジェクトもretainメソッドで所有権を持つ事ができる。
所有権を持ったオブジェクトもautoreleaseで所有権を放棄する事ができる。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1