通用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)