Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 错误objc_retainedObject()不可用_Objective C_Xcode - Fatal编程技术网

Objective c 错误objc_retainedObject()不可用

Objective c 错误objc_retainedObject()不可用,objective-c,xcode,Objective C,Xcode,当我试图构建我的项目时,在使用objc\u retainedObject()的地方出现了一个新错误 我收到一条错误消息objc\u retianedObject不可用:请改用CfBrigingRelease()或(\uu桥\u传输id)强制转换 我用CfBrigingRelease替换了objc_retainedObject()的用法,不再有错误,我可以运行该应用程序,但当该应用程序要显示我的QRCode扫描视图时,它崩溃了,没有消息 当我把#define objc_retainedObject

当我试图构建我的项目时,在使用
objc\u retainedObject()
的地方出现了一个新错误

我收到一条错误消息
objc\u retianedObject不可用:请改用CfBrigingRelease()或(\uu桥\u传输id)强制转换

我用
CfBrigingRelease
替换了
objc_retainedObject()
的用法,不再有错误,我可以运行该应用程序,但当该应用程序要显示我的QRCode扫描视图时,它崩溃了,没有消息

当我把
#define objc_retainedObject(o)((u bridge_transfer id)(objc_objectptr_t)(o))
作为解决方案时也是如此。
我认为这是一个XCode配置或缺少库的问题。有什么想法吗?

不要重新创建
objc\u retainedObject
。它是故意搬走的
CfBrigingRelease
CfBrigingRetain
是将CF对象移动到圆弧中的正确工具。(
\uuuu bridge
是处理CF对象的工具,您不需要将这些对象传输到ARC,因为您不存储它们。)

如果您的程序正在崩溃,则可能是内存管理不正确。很可能是
objc_retainedObject
不正确(即使您碰巧侥幸逃脱了惩罚)。有关将CF对象传输到ARC时的正确内存管理,请参阅


在不了解更多代码的情况下,我无法准确猜测您在哪里犯了错误,但您可能正在调用
CfBrigingRelease
,该对象不是通过获取的。您不会对遇到的每个CF对象都抛出
CfBrigingRelease
。您需要确保正在平衡现有保留。

不要重新创建
objc\u retainedObject
。它是故意搬走的
CfBrigingRelease
CfBrigingRetain
是将CF对象移动到圆弧中的正确工具。(
\uuuu bridge
是处理CF对象的工具,您不需要将这些对象传输到ARC,因为您不存储它们。)

如果您的程序正在崩溃,则可能是内存管理不正确。很可能是
objc_retainedObject
不正确(即使您碰巧侥幸逃脱了惩罚)。有关将CF对象传输到ARC时的正确内存管理,请参阅

在不了解更多代码的情况下,我无法准确猜测您在哪里犯了错误,但您可能正在调用
CfBrigingRelease
,该对象不是通过获取的。您不会对遇到的每个CF对象都抛出
CfBrigingRelease
。您需要确保平衡现有的保留