在ARC工程引入非ARC时,出现__unsafe_unretained

在ARC工程引入非ARC时,出现__unsafe_unretained

分类: object-c2013-03-25 10:43 3816人阅读 评论(0) 收藏 举报

@interface MDSpreadView : UIScrollView {

@private

id <MDSpreadViewDataSource> _dataSource;

}

@property (nonatomic, assign) IBOutlet id <MDSpreadViewDataSource> dataSource;

上面一段在编译时出现existing instance variable ‘_dataSource‘ for property ‘dataSource‘ with  assign attribute must be __unsafe_unretained

将上一段改为

@interface MDSpreadView : UIScrollView {

@private

id <MDSpreadViewDataSource>__unsafe_unretained _dataSource;

}

@property (unsafe_unretained) IBOutlet id <MDSpreadViewDataSource> dataSource;

问题就可以解决

时间: 2024-08-25 15:27:52

在ARC工程引入非ARC时,出现__unsafe_unretained的相关文章

XCode工程中ARC模式与非ARC模式共用(转)

Xcode 项目中经常会融合一些老的代码,它们可能采用非ARC的模式.混合编译时,就会碰到编译出错的情况. 如何共用ARC模式和非ARC模式呢? XCode除了提供整个项目是否使用ARC模式的选择外,还可以对单个文件添加标签来指定是否采用ARC模式. 添加标签的方法: 打开:你的target -> Build Phases -> Compile Sources. 双击对应的 *.m 文件 在弹出窗口中输入上面提到的标签-fobjc-arc / -fno-objc-arc (1)如果你的项目使用

ARC 中使用非ARC的类

在TARGETS-Bulid Phares-Compile Sources中找到非ARC的文件,双击,在弹出的框中添加 1 -fno-objc-arc 如图: 即可 PS:如果项目建立时未使用ARC,想将其改为ARC,可以在building setting中修改 在Building Setting中搜索auto reference 将Objective-C Automatic Reference Counting一行设置为YES即可

iOS开发,用了ARC,引入非ARC的第三方,报错

ARC forbids explicit message sendof'dealloc' 在xcode中,打开“Build Setting”,找到“Objective-C Automatic Reference Counting”项,将它的值设置成“NO”,即可. 如果未找到“Objective-C Automatic Reference Counting”项,则找到"CLANG_ENABLE_OBJC_ARC" 将它的值设置成NO 这样ARC功能就关闭了.

Xcode 的ARC转化功能以及跟非ARC共存方法

1.ARC工程跟非ARC文件的共存方法: 在工程中选择 Build Phases 然后选择Compile Sources 里面,找到需要共存的非ARC文件,然后按Enter键,在弹出的窗口中填入:-fno-objc-arc 即可. 2.在非ARC工程中跟ARC文件共存的方法: 在工程中选择 Build Phases 然后选择Compile Sources 里面,找到需要共存的非ARC文件,然后按Enter键,在弹出的窗口中填入:-f-objc-arc 即可. 3.把非ARC文件直接转换成ARC文

ARC和非ARC文件混编

在编程过程中,我们会用到很多各种各样的他人封装的第三方代码,但是有很多第三方都是在非ARC情况下运行的,当你使用第三方编译时出现和下图类似的错误,就说明该第三方是非ARC的,需要进行一些配置. 解决方法: 苹果文档Transitioning to ARC Release Notes有一种解决办法为: Use Compiler Flags to Enable and Disable ARC You enable ARC using a new -fobjc-arc compiler flag. Y

大钟的ios开发之旅(2)————简单说说ios中ARC与非ARC模式下的property的变量修饰词

/******************************************************************************************** * author:[email protected]大钟 * E-mail:[email protected] *site:http://www.idealpwr.com/ *深圳市动力思维科技发展有限公司 * http://blog.csdn.net/conowen * 注:本文为原创,仅作为学习交流使用,转

(知其所以然 主题2)从底层分析OC中ARC和非ARC下深复制和浅复制

今天,在坊间听到有人在争论OC中关于NSString的深浅复制,听了下,感觉很有必要来一个分析总结,让我们从底层去了解OC中深浅复制的运作机制. 所谓copy就是在原有对象的基础上产生一个副本对象,遵循最关键的两点原则: 1. 改变原对象的属性和行为不会对副本对象产生任何影响 2. 改变副本对象的属性和行为不会对原对象产生任何影响 在理解了这一层之后,我们一起来研究下deep copy 和 shallow copy,因为苹果是一个非常注重性能的公司,所以拷贝在底层实现没那么简单: 以NSStri

iOS开发之ARC与非ARC的设置

我们开发的时候经常需要有arc和非arc的混编,这样我们就需要对其进行设置 用-fno-objc-arc来标记在ARC工程那些不支持ARC的文件 用-fobjc-arc标记标记在非ARC工程中支持ARC的文件 原文地址:https://www.cnblogs.com/hecanlin/p/11044728.html

1.ARC模式下如何兼容非ARC的类

ARC模式下如何兼容非ARC的类 :转变为ARC的, -f-objc-arc 非ARC模式下如何兼容ARC的类 :转变为非ARC -fno-objc-arc