通用Lisp/參考/cons
外觀
cons 既是 Lisp 的基本記憶體物件,也是 Lisp 運算子的名稱。作為記憶體物件,cons 是一個記憶體結構,它可以儲存一對物件,稱為 car 和 cdr。
cons 運算子提供了一種方法來建立 cons 物件並設定值。例如,以下命令建立了一個 cons 物件,其 car 欄位設定為 1,cdr 欄位設定為 2
> (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)