String?{ return nil } 如您所知,项目类型是 CVarArg 和-6ren">
gpt4 book ai didi

swift - Swift 可以为参数创建 "OR"类型吗?

转载 作者:行者123 更新时间:2023-11-28 10:05:08 25 4
gpt4 key购买 nike

很容易为参数创建“AND”类型:

func test(item:(CVarArg&AnyObject))->String?{
return nil
}

如您所知,项目类型是 CVarArg 和 AnyObject。

但是如何创建“OR”类型来指示项目是 CVarArg 还是 AnyObject???

谢谢:)

PS: 我试过 item:(item:(CVarArg|AnyObject))

但它不起作用!

更新 1:

我只想将项目的类型限制在 CVarArg 和 AnyObject 之间,然后自己编码:

func test(item:(CVarArg|AnyObject))->String?{
if item is CVarArg {
// Do something for CVarArg
}else{
// Must be AnyObject,Do something ...
}
}

最佳答案

使用函数重载:

func test(item: CVarArg...) -> String? {
return "A"
}

func test(item: AnyObject) -> String? {
return "B"
}

关于swift - Swift 可以为参数创建 "OR"类型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54964324/

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