rk4_func(
y_array: [Double],
f_array: [(([Double], Double) -> Double)],
t_val: Double,
h_val: Double)
-> [Double]
我不明白如何使用参数f_array: [(([Double], Double) -> Double)]
。在调用函数时我究竟如何传递它?
答案 0 :(得分:1)
这有点棘手:)
关于Swift's function types:类型(Int) -> Float
的快速余数意味着:一个接受int并返回float的函数。好的,现在回到你的问题:
正如参数f_array
所说(或者,至少是尝试),它需要一个函数数组。在这个数组中,每个函数接受两个参数:
[Double]
Double
并返回Double
。
让你前进的简单例子:
func f(_ a: [Double], _ b: Double) -> Double { ... }
func g(_ a: [Double], _ b: Double) -> Double { ... }
let f_array = [f, g]
那里有一股Swift魔法。如果您需要进一步澄清,请与我们联系。