構(gòu)建復(fù)合類型(Building Compound Types)

構(gòu)建符合類型的方式

基礎(chǔ)類型:int bool unit char
復(fù)合類型:tuple list option

要創(chuàng)建復(fù)合類型,實際上只有三種必不可少的組成部分;任何正式的語言都以某種方式提供了這些部分。下面的術(shù)語名稱可能不是準(zhǔn)確的,但不妨礙它是思考此概念的好方式。

三種基本組成部分

  1. Each oft值包含t1 t2 t3 ... tn中每一個值
    該類型對大多數(shù)人來說是比較熟悉的,Tuple就是一個例子:int * bool描述了包含一個int和一個bool的值。
    有字段的java類也是一個Each of類型。

  2. One oft值包含的是t1 t2 t3 ... tn其中一個值
    該類型也很常見,不幸的是許多入門編程課程都沒有強(qiáng)調(diào)此類型。int option是一個簡單的示例:此類型包含一個int值或者不包含int值。在ML若需要intbool的類型,我們需要使用datatype綁定;在面向?qū)ο蟮恼Z言中,如在java中,One of類型是通過子類來實現(xiàn)的。

  3. Self referencet值可以引用另一個t
    該類型允許描述遞歸數(shù)據(jù)結(jié)構(gòu)。在與上面兩種類型結(jié)合使用時,通常非常有用。例如,int list描述了不包含任何值或包含

嵌套使用

 (int * bool) list list * (int option) list * bool
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容