S.J*_*S.J 0 objective-c ios automatic-ref-counting
在ARC环境中,我MyClass *mcObj = [[MyClass alloc]init]使用它之后会有一个对象,如果我这样做,或者mcObj = nil;在使用它之后执行此操作.
此对象可以存在于任何范围内,例如全局viewcontroller或仅在方法内部,-(void)aMethod;请解释这两种情况.
答案是 - "这取决于".
如果在方法中创建它并且不将其分配给任何东西,那么当它超出范围时,它将被设置为nil.(实际上,LLVM会release为您插入相关的呼叫).
如果将变量传递给函数外部,则局部变量在超出范围时仍将设置为nil,但如果对对象有强引用,则不会释放它.
一般来说,你真的不必太多考虑这个问题.如果你想保留一个对象,那么你保留一个强引用,否则你不必担心保留释放调用.
| 归档时间: |
|
| 查看次数: |
185 次 |
| 最近记录: |