通用 Lisp/参考/cons
外观
(重定向自 通用 Lisp 参考/cons)
cons 既是 Lisp 的基本内存对象,也是 Lisp 运算符的名称。cons 作为内存对象,是一种能够存储一对对象的内存结构,称为 car 和 cdr。
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)