Swift 2:OBJC_ASSOCIATION_RETAIN_NONATOMIC使用未解析的标识符

前端之家收集整理的这篇文章主要介绍了Swift 2:OBJC_ASSOCIATION_RETAIN_NONATOMIC使用未解析的标识符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚将我的项目更新为Swift 2。

我是我的一个快速课我使用ObjC协会。

我有以下几点:

objc_AssociationPolicy( OBJC_ASSOCIATION_RETAIN_NONATOMIC)

自更新以来,编译器返回使用未解析的标识符“OBJC_ASSOCIATION_RETAIN_NONATOMIC”。

任何想法为什么?

编辑:
对于那些有同样问题的人,暂时的修复将是用它的值替换常量。 1:objc_AssociationPolicy(rawValue:1)

如果您查看对象运行时swift头,似乎这个构造已经成为一个枚举:
/**
 * Policies related to associative references.
 * These are options to objc_setAssociatedObject()
 */
enum objc_AssociationPolicy : UInt {

    case OBJC_ASSOCIATION_ASSIGN
    case OBJC_ASSOCIATION_RETAIN_NONATOMIC

    case OBJC_ASSOCIATION_COPY_NONATOMIC

    case OBJC_ASSOCIATION_RETAIN

    case OBJC_ASSOCIATION_COPY
}

所以你可以用:objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC替换。

如果您需要令牌作为UInt,您可以随时使用.rawValue。

(在之前的版本中,objc_AssociationPolicy只是UInt的一个typealias,具有转换“OBJC_ASSOCIATION_RETAIN_NONATOMIC”的效果,一个Int)

猜你在找的Swift相关文章