【发布时间】:2011-04-29 11:00:12
【问题描述】:
我的类包含一个 UIImage 属性,我希望任何访问它的外部客户端都将其强制为“复制”属性。但是,当我尝试在我的自定义设置器中进行复制时,我收到关于 UIImage 不支持 copyWithZone 的运行时错误。那么什么是确保遵循正确的所有权政策的好方法呢?
// declared in the interface as:
@property (nonatomic, readonly, copy) UIImage *personImage;
// class implementation
- (void)setPersonImage:(UIImage *)newImage
{
if (newImage != personImage)
{
[personImage release];
// UIImage doesn't support copyWithZone
personImage = [newImage copy];
}
}
【问题讨论】:
标签: iphone objective-c memory-management