定义在Swift中被视为类的结构

定义在Swift中被视为类的结构,第1张

概述在 Swift中,String结构也被视为类对象,就像使用NSCoder encodeObject(_:forKey :)方法一样.我知道String直接与objective-c类NSString桥接,但有没有办法制作一个行为相似的自定义结构?也许将它连接到一个自定义类?我希望能够做到这样的事情: struct SortedArray <Value: Comparable> {}// Woul 在 Swift中,String结构也被视为类对象,就像使用NSCoder encodeObject(_:forKey :)方法一样.我知道String直接与objective-c类Nsstring桥接,但有没有办法制作一个行为相似的自定义结构?也许将它连接到一个自定义类?我希望能够做到这样的事情:
struct SortedArray <Value: Comparable> {}// Would I need to create a brIDge between // SortedArray and NSSortedArray? Can I even do that?class NSSortedArray <Value: Comparable> : NSObject,NSCoding {    required init?(coder aDecoder: NSCoder) {}    func encodeWithCoder(aCoder: NSCoder) {}}class MyClass : NSObject,NSCoding {    private var objects: SortedArray<String> = SortedArray<String>()    required init?(coder aDecoder: NSCoder) {        guard let objects = aDecoder.decodeObjectForKey("objects") as? SortedArray<String> else { return nil }        self.objects = objects    }    func encodeWithCoder(aCoder: NSCoder) {        aCoder.encodeObject(objects,forKey: "objects")    }}
目前这不可行. SE-0058将解决这个问题,但是会从Swift 3推迟.期望SE-0058的最终实施不仅仅是处理ObjC桥接;例如,在更通用的解决方案中允许C或.NET桥接. 总结

以上是内存溢出为你收集整理的定义在Swift中被视为类的结构全部内容,希望文章能够帮你解决定义在Swift中被视为类的结构所遇到的程序开发问题。

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

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1034736.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-24
下一篇2022-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存