![]() |
1
7
cons单元中的两个位置称为“car”和“cdr”。您可以将这样一个cons单元格可视化为一个平分块:
在Lisp中,值也可以是对其他内容的引用,例如,另一个cons单元格:
这将以“点对”形式表示为
这是
这就是在Lisp中构造列表的方式。自从
现在你可以明白为什么
如果
所以,
列表只是cons单元格的一种非常常见的用法。实际上,还可以从cons单元格、循环列表或任何有向图构造任意树。 |
![]() |
3
1
(CONS X L) 给定x和l,cons返回一个新的cons单元格,其中x是该单元格的car,l是该单元格的cdr。 列表是cons单元格的链接链。
如果cons得到两个符号作为参数,则如下所示:
|
![]() |
lightning_missile · 词法范围和共享对象 7 年前 |
![]() |
Alexandru Popa · SBCL中奇怪的宏扩展错误 7 年前 |
![]() |
Jacky · 编辑列表中的每个偶数索引元素 7 年前 |
![]() |
HappyFace · lisp典型缩进约定背后的规则是什么? 7 年前 |
![]() |
Jorge · 在公共Lisp中初始化计数器变量 7 年前 |
![]() |
Rorschach · cl循环破坏性修改cons单元 7 年前 |