跳转到内容

通用Lisp/参考/cons

来自维基教科书,开放的书籍,开放的世界

cons 既是 Lisp 的基本内存对象,也是 Lisp 运算符的名称。作为内存对象,cons 是一个内存结构,它可以存储一对对象,称为 carcdr

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)


另请参阅

[编辑 | 编辑源代码]
华夏公益教科书