gpt4 book ai didi

swift - swift 中符合多种协议(protocol)的类型

转载 作者:行者123 更新时间:2023-11-30 12:40:49 26 4
gpt4 key购买 nike

我有一个符合多个协议(protocol)的 Objective-C 变量。

id <NSObject, NSCopying, NSCoding> identityToken; 

我如何在 Swift 中表示这种类型?

最佳答案

这应该有效:

var identityToken: NSObjectProtocol & NSCopying & NSCoding 

请注意,您必须在 swift 中使用 NSObjectProtocol 而不是 NSObject。

以下是一些其他示例:

符合多个协议(protocol)的对象数组:

var array: [NSObjectProtocol & NSCopying & NSCoding]

具有符合多个协议(protocol)的参数的函数:

func foo(param: NSObjectProtocol & NSCopying & NSCoding) {

}

对于 3.1 之前的 Swift 版本,使用:

var identityToken: (NSObjectProtocol, NSCopying, NSCoding)

关于swift - swift 中符合多种协议(protocol)的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42241863/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com