"self.propery = [[SomeClass alloc] init];" 泄密记忆?

gio*_*iga 0 memory-management objective-c

在Objective-C中编写是否安全

self.propery = [[SomeClass alloc] init];
Run Code Online (Sandbox Code Playgroud)

代替

SomeClass *tmp = [[SomeClass alloc] init];
self.property = tmp;
[tmp release];
Run Code Online (Sandbox Code Playgroud)

或者第一种形式会泄漏内存吗?

Kev*_*tre 5

除非您提供自定义属性设置器,否则第一个示例会泄漏.您可以使用:

self.propery = [[[SomeClass alloc] init] autorelease];
Run Code Online (Sandbox Code Playgroud)

代替.