我對 OCaml 很陌生(目前在大學學習糟糕的課程),我們最近研究了遞回型別。我們被告知我們使用它來創建串列,但是 OCaml 中已經有串列,所以我真的不明白什么時候應該使用一個而不是另一個。
例子 :
(* list made with a recursive type : *)
type int_list =
| None
| Element of int * int_list
(* just a list *)
let int_list2 : int list = []
uj5u.com熱心網友回復:
遞回型別和串列有什么區別?
“遞回型別”描述了一整型別別,list而是一種特定的遞回型別。換句話說:list是一種遞回型別,但是除了 . 之外還有遞回型別list。
OCaml 中已經有串列,所以我真的不明白什么時候應該使用一個而不是另一個。
什么時候應該使用int_list內置list型別?絕不。你的老師向你展示了這個定義作為遞回型別的一個例子,而不是你應該實際使用的東西。
只有在定義標準庫中尚不存在的東西時,您才會定義自己的遞回型別(當然學習練習除外)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/439692.html
