Objective-C を学習し、サンプル コードを読んでいると、オブジェクトは通常次の方法で作成されることに気付きました。
SomeObject *myObject = [[SomeObject alloc] init];
の代わりに:
SomeObject *myObject = [SomeObject new];
これらは同等であると読んだのですが、これには理由があるのでしょうか?
ベストアンサー1
これには多くの理由があります:http://macresearch.org/alloc-init と new の違い
いくつか選ばれたものは次のとおりです:
new
カスタム初期化子( などinitWithString
)をサポートしていませんalloc-init
より明白であるnew
一般的な意見としては、自分が使いやすいものを使用すべきだということのようです。