gpt4 book ai didi

swift - 如何为多种数字类型制作通用函数?

转载 作者:行者123 更新时间:2023-11-28 12:23:15 25 4
gpt4 key购买 nike

假设我有这些功能

// bar is some external function
// it has signature bar(_ number: Double) -> Double

func foo(number: Int) -> Double {
return bar(Double(number))
}

func foo(number: Float) -> Double {
return bar(Double(number))
}

func foo(number: Double) -> Double {
return bar(number)
}

我想要一个通用函数:

func foo<T>(number: T) -> Double {
return bar(Double(number))
}

但编译器似乎不喜欢这个想法:

enter image description here

如何在 swift3 中正确制作此类通用函数?还是不可能?

最佳答案

我认为您尝试做的事情不太可能。您可能对此感兴趣:https://gist.github.com/erica/2f6a38c844573c778b0f

导入代码后你可以做

func foo<T: DoubleRepresentable>(number: T) -> Double {
return number.doubleValue
}

关于swift - 如何为多种数字类型制作通用函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44187362/

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