1

可能重复:
xcode 上未声明的标识符 __bridge

我是 iOS 5.0 中自动引用计数的新手,并将旧项目从手动内存管理转换为 ARC。一切正常(我用 -fno-objc-arc 编译器标志为选定的 3rd 方库关闭了 ARC),除了 Apples Reachability 类。我在这里下载了一个 ARC'ified 版本的 Reachability

https://gist.github.com/1182373

这对很多人来说似乎都很好。

我确实收到以下编译器错误:

use of undeclared identifier '__bridge' [3]
         NSCAssert([(__bridge NSObject*) info isKindOfClass: [Reachability class]], @"info was wrong class in ReachabilityCallback");

我之前在我的项目中有一个较旧的(非 ARC)版本的可达性,并且之前使用 -fno-objc-arc 标志对其进行了编译。我已经删除了编译器标志,清理并编译但不断收到上述错误。删除 __bridge 符号时,我按预期收到以下错误

error: cast to 'NSObject *' of a non-Objective-C to an Objective-C pointer is disallowed with Automatic Reference Counting [4]
     NSCAssert([(NSObject*) info isKindOfClass: [Reachability class]], @"info was wrong class in ReachabilityCallback");

所以你可以看到ARC确实打开了。我使用 XCode 4.2(构建 4D5031b)。

我将不胜感激您可能提供的任何见解!提前致谢。

干杯,乔治

4

0 回答 0