在ocaml中具有各种数据类型的列表

问题描述

我是ocaml的新手,所以我想知道为什么这不起作用。

let lst : (string * int * char) list = ["1"; 2; '3'];;

我该如何解决

解决方法

这是形状像(string * int * char)的元组的列表。

您最想寻找的是一种变体类型。 https://dev.realworldocaml.org/variants.html

type mix = | Str of string | Int of int | Char of char

let lst : mix list = [Str "1"; Int 2; Char '3']