跳轉到內容

通用 Lisp/參考/cons

來自華夏公益教科書,開放的書籍,開放的世界

cons 既是 Lisp 的基本記憶體物件,也是 Lisp 運算子的名稱。cons 作為記憶體物件,是一種能夠儲存一對物件的記憶體結構,稱為 carcdr

cons 運算子提供了一種建立 cons 物件並設定值的方法。例如,以下命令建立了一個 car 欄位設定為 1、cdr 欄位設定為 2 的 cons 物件

> (cons 1 2)

(1 . 2)

由於 cons 物件可以在其 car 和 cdr 欄位中儲存對其他 cons 物件的引用,因此 cons 欄位也可以用作一系列資料結構的基本構建塊。因此,可以使用 cons 物件構造單向連結串列,例如

> (cons 1 (cons 2 (cons 3 nil)))

(1 2 3)

之前的 car 巢狀結構生成與以下等效的單向連結串列

> (list 1 2 3)

(1 2 3)


另請參見

[編輯 | 編輯原始碼]
華夏公益教科書