如何在输入元组ocaml上进行模式匹配
How to pattern match on input tuples ocaml
比如我有代码
let add_next (data: int * int * int list) : int =
然而,数据这个词真的很含糊,我希望能够在函数头中命名前两个整数,然后是列表,同时保留 int * int * int list
的类型。如何做到这一点?
OCaml version 4.01.0
# let add_next ((first, second, l): int * int * int list) : int = first;;
val add_next : int * int * int list -> int = <fun>
如果您需要传递 data
元组而不需要重建它,请使用 as
结构:
# let add_next ((first, second, l) as data: int * int * int list) : int =
ignore data;
first;;
val add_next : int * int * int list -> int = <fun>
比如我有代码
let add_next (data: int * int * int list) : int =
然而,数据这个词真的很含糊,我希望能够在函数头中命名前两个整数,然后是列表,同时保留 int * int * int list
的类型。如何做到这一点?
OCaml version 4.01.0
# let add_next ((first, second, l): int * int * int list) : int = first;;
val add_next : int * int * int list -> int = <fun>
如果您需要传递 data
元组而不需要重建它,请使用 as
结构:
# let add_next ((first, second, l) as data: int * int * int list) : int =
ignore data;
first;;
val add_next : int * int * int list -> int = <fun>