parameters - F# 元组转换为函数参数

标签 parameters f# tuples currying

有没有办法将元组转换为单独的参数并将它们放到函数中而不是绑定(bind)到变量?

就像是

let nice funOf5 tupleOf5 =
    funOf5 (Tuple.toParameters tupleOf5)

代替
let ugly funOf5 tupleOf5 =
    let (number1, number2, number3, number4, number5) = tupleOf5
    funOf5 number1 number2 number3 number4 number5

谢谢。

最佳答案

一种解决方案是在函数定义中使用模式匹配。

这是受到 |||> 的 std lib 解决方案的启发。这是

let inline (|||>) (x1,x2,x3) f = f x1 x2 x3

那么你可以拥有
let inline funof5 (x1,x2,x3,x4,x5) f = f x1 x2 x3 x4 x5

关于parameters - F# 元组转换为函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38008869/

相关文章:

c++ - 尝试使用 qsort 对 cstring 进行排序

python - 从元组中删除元素

scala - 在 Scala 元组上使用函数组合器?

f# - 使用 TPL 的代码是否有更符合 F# 习惯的方式?

F# op_Equality 不同类型

c# - 请确认或更正我的这个 Haskell 代码片段的 "English interpretation"

python - 按数值排序字典

javascript - 在另一个 jade 文件中访问从 Jade 文件传递​​的变量

Python:定义具有可变数量参数的函数

arrays - 根据参数从函数内部的数组返回值