Có thể giải nén một loại bằng cách liên kết dữ liệu của nó với một giá trị duy nhất thay vì một bộ tuple không?Thi công hàm OCaml giải nén
# type foo = Foo of int * string;;
type foo = Foo of int * string
# Foo (3; "bar");;
Foo (3; "bar");;
Error: The constructor Foo expects 2 argument(s),
but is applied here to 1 argument(s)
# Foo (3, "bar");;
- : foo = Foo (3, "bar")
# (* Can this possibly work? *)
# let Foo data = Foo (3, "bar");;
let Foo data = Foo (3, "bar");;
Error: The constructor Foo expects 2 argument(s),
but is applied here to 1 argument(s)
# (* Here is the version that I know works: *)
# let Foo (d1, d2) = Foo (3, "bar");;
val d1 : int = 3
val d2 : string = "bar"
Cú pháp này có thể thực hiện được không?
bản sao có thể có của [Sử dụng hàm tạo kiểu biến thể chỉ với một giá trị tuple] (http://stackoverflow.com/questions/9774671/using-a-variant-type-constructor-with-just-one-tuple-value) – ygrek