gpt4 book ai didi

swift - 如何使用 ** 用于指数使用 @infix func **( )?

转载 作者:IT王子 更新时间:2023-10-29 05:45:32 25 4
gpt4 key购买 nike

我想使用 ** 重载指数函数。如果我使用类似“^”的东西,我会工作,但 python 的做法是 ** 我想将它与 Swift 一起使用。有什么办法吗?

error: Operator implementation without matching operator declaration

@infix func ** (num: Double, power: Double) -> Double{
return pow(num, power)
}

println(8.0**3.0) // Does not work

最佳答案

在定义函数之前需要先声明运算符,如下:

在 Swift 2 中:

import Darwin

infix operator ** {}

func ** (num: Double, power: Double) -> Double {
return pow(num, power)
}

println(8.0 ** 3.0) // works

在 Swift 3 中:

import Darwin

infix operator **

func ** (num: Double, power: Double) -> Double {
return pow(num, power)
}

print(8.0 ** 3.0) // works

关于swift - 如何使用 ** 用于指数使用 @infix func **( )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24084801/

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