iOS中set方法

今天无心中发现,本身代码中一些地方的set方法写的居然有问题,作个记录,以示警戒吧,之后要细心;code

下面举例说明:对象

修改前:class

- (void)setTestStr:(NSString *)testStr{
    [_testStr release];
    _testStr = [testStr retain];
}

修改后:test

- (void)setTestStr:(NSString *)testStr{
    [testStr retain];
    [_testStr release];
    _testStr = testStr;
}


前者,当testStr和self.testStr指向同一个对象时,程序就会出现问题。
程序

相关文章
相关标签/搜索