HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 模糊类型名称错误大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试重新编译 @L_502_0@yUserDefaults( https://github.com/radex/SwiftyUserDefaults)以添加Carthage支持,但在尝试编译时我看到以下错误

用于以下代码

public func ?= (proxy: NSUserDefaults.Proxy,@autoclosure expr: () -> Any) {
    if !proxy.defaults.hasKey(proxy.key) {
        proxy.defaults[proxy.key] = expr()
    }
}

对于

public subscript(key: String) -> Proxy {
    return Proxy(self,key)
}

据我所知 – 问题在于代理类,它是嵌入在扩展中的.

public extension NSUserDefaults {
    class Proxy {
        private let defaults: NSUserDefaults
        private let key: String

        private init(_ defaults: NSUserDefaults,_ key: String) {
            self.defaults = defaults
            self.key = key
        }

        // MARK: Getters

        public var object: NSObject? {
            return defaults.objectForKey(key) as? NSObject
        }

        // ..................................       

    }
}

我已经查找了文档,但没有任何引用可以在扩展中使用类.

这样对吗?

解决方法

您正在目标SwiftlyUserDefaultsTests中编译SwiftlyUserDefaults.swift文件两次:一次在SwiftlyUserDefaults.framework中(这是SwiftlyUserDefaultsTests的依赖项),一次在“编译源”构建阶段.

只需从SwiftlyUserDefaultsTests目标的“编译源”构建阶段中删除SwiftlyUserDefaults.swift文件,您就应该好了.

大佬总结

以上是大佬教程为你收集整理的ios – 模糊类型名称错误全部内容,希望文章能够帮你解决ios – 模糊类型名称错误所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。