【问题标题】:Objective C, replacement of retain while using ARC目标C,使用ARC时替换retain
【发布时间】:2012-09-18 23:01:58
【问题描述】:

我正在尝试将使用保留和释放的项目转换为使用 ARC。 XCode 中的自动转换没有成功,所以我手动完成。处理释放很容易。我现在只剩下几个保留语句,如下所示:

UIImage *origImage = [[info objectForKey:UIImagePickerControllerOriginalImage] retain];

如何将其转换为 ARC 友好?我尝试使用 strong 关键字,但编译器抱怨 Use of undeclared identifier 'strong'。

【问题讨论】:

    标签: objective-c automatic-ref-counting


    【解决方案1】:
    UIImage *origImage = [info objectForKey:UIImagePickerControllerOriginalImage] ;
    

    它是 ARC 友好的。

    【讨论】:

      【解决方案2】:

      您想使用__strong,这与将strong 用于@property 相同,但用于变量。与weak__weak 相同

      __strong UIImage *origImage = [info objectForKey:UIImagePickerControllerOriginalImage];
      

      【讨论】:

      • 或者你什么也做不了。 ARC 会自行处理这种情况。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-03
      • 1970-01-01
      • 1970-01-01
      • 2013-03-20
      • 1970-01-01
      相关资源
      最近更新 更多