我是否必须保留SEL

时间:2011-10-06 21:40:11

标签: objective-c

当我将选择器传递给我的方法时,我应该保存它:

-(void) setCallBack:(SEL) selectorToCall
{
    self->mSelectorToCall = selectorToCall;
}

还是应该保留?

-(void) setCallBack:(SEL) selectorToCall
{
    self->mSelectorToCall = [selectorToCall retain];
}

2 个答案:

答案 0 :(得分:8)

不,SEL类型不是对象引用,它基本上是一个常量字符串指针。你可以像在第一个例子中那样分配它。

答案 1 :(得分:5)

不,选择器不是对象,因此您无法保留它们。