typ*_*ror 2 memory-management objective-c
在objective-c中,我看到很多示例代码,其中作者分配局部变量,将其分配给属性,然后释放局部变量.这样做是否有实际原因?我一直只是直接分配给该物业.这会以任何方式导致内存泄漏吗?我想我想知道这是否有任何区别:
HomeScreenBtns *localHomeScreenBtns = [[HomeScreenBtns alloc] init];
self.homeScreenBtns = localHomeScreenBtns;
[localHomeScreenBtns release];
Run Code Online (Sandbox Code Playgroud)
还有这个:
self.homeScreenBtns = [[HomeScreenBtns alloc] init];
Run Code Online (Sandbox Code Playgroud)
假设homeScreenBtns是这样的属性:
@property (nonatomic, retain) HomeScreenBtns *homeScreenBtns;
Run Code Online (Sandbox Code Playgroud)
我正准备将我的应用程序提交到应用程序商店,因此我处于完全优化/ QA模式.
Assuming:
@property (nonatomic,retain) HomeScreenBtns *homeScreenBtns;
Run Code Online (Sandbox Code Playgroud)
Then (1) implies a retain
. (2) implies a second retain
because the property says so. (3) releases the retain
in the local scope created by (1).
If you don't do (3), you'll leak eventually.
这些都记录在内存管理指南中.
归档时间: |
|
查看次数: |
929 次 |
最近记录: |