sri*_*sri 6 delegates objective-c
对于我的项目,我正在创建委托类.当我指定obj.delegate = self时,[self retainCount]增加1.因此,具有保留计数的已分配对象是2.如何释放委托对象和分配的对象retaincount为1?
关心Srini
通常的约定是不保留代表.这主要是因为通常的模式是对象的所有者通常也是它的委托,如果委托被保留,你将得到一个保留周期.
如果您使用的是属性,请按以下方式声明:
@property (assign) DelegateType delegate; // replace "DelegateType" with whatever type you need
Run Code Online (Sandbox Code Playgroud)
并删除-dealloc释放委托的行.
如果合成了访问器,那么现在就完成了.如果没有,请使访问者分配访问者,例如
-(DelegateType) delegate
{
return delegate;
}
-(void) setDelegate: (DelegateType) newValue
{
delegate = newValue;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2084 次 |
| 最近记录: |