0

谁能解释一下我们如何在 Ocaml 中定义新的数据类型,我对 ocaml 完全陌生。说,我必须定义一个新的类型 bitseq,也就是说所有的二进制数。

因此,在浏览了各种在线教程后,我为它所做的就是输入num = Nil| 0 |1;;并尝试了它的一些变体,但没有成功。

4

1 回答 1

2

您是否看过有关变体类型的手册?

每个案例都由一个名称标识,称为构造函数,它既用于构造变体类型的值,也用于通过模式匹配检查它们。构造函数名称大写以区别于变量名称(必须以小写字母开头)。

因此,您不能使用0or1作为构造函数名称。如果我是你并且我不关心二进制数表示中的前导零,我会选择以下内容:

type bit = Zero | One
type bitseq = bit list
于 2013-02-01T14:19:28.383 回答