定义(不分配)自定义类型的变量

时间:2019-02-16 09:26:55

标签: types ocaml ml

我定义了以下两种自定义类型:

type noeud = Lettre of (char * bool * arbre_lex)
and arbre_lex = noeud list

我可以轻松创建一个包含 1 arbre_lex元素的noeud

# let a = [ Lettre ('c', true, []) ];;
val a : noeud list = [Lettre ('c', true, [])]
  

现在如何创建由0个arbre_lex元素组成的noeud自定义类型?

这只会创建一个空列表,但类型不是arbre_lex ...

# let b = [];;
val b : 'a list = []

this似乎不起作用:

# let c : arbre_lex = [];;
Error: Syntax error

1 个答案:

答案 0 :(得分:1)

更新:我不知道发生了什么,但是我以某种方式做错了。正确的方法实际上是:

# let d : arbre_lex = [];;
val d : arbre_lex = []