【发布时间】:2014-01-23 05:26:32
【问题描述】:
WWDC 2013 讲座幻灯片包含一个部分,在某些情况下可以省略显式桥接演员表。我在 Xcode 5 中写了这个(虽然使用 10.8,而不是 10.9),编译器抱怨我需要一个桥接演员。我只是完全不理解这个概念吗?
#import <Foundation/Foundation.h>
CF_IMPLICIT_BRIDGING_ENABLED
CFStringRef MyCreateStringFromNothing();
CF_IMPLICIT_BRIDGING_DISABLED
void SomeFunction() {
// compiler requires bridging cast here...
NSString* x = MyCreateStringFromNothing();
}
我问的原因是我想写:
NSString* s = CFUUIDCreateString(NULL, uuid);
并认为关于隐式桥接的新工作应该让我能够写这个。但这也需要一个过渡演员。
【问题讨论】:
-
当您说“使用 10.8”时,您能更具体一点吗?有三件事在起作用:您正在运行的操作系统、SDK 和部署目标
-
无论 Xcode 是在 10.8 还是 10.9 上运行,我都会得到相同的结果。另外,如果部署目标是 ios7 或 10.9,结果也是一样的。
标签: ios objective-c automatic-ref-counting xcode5 core-foundation