7.2 cons

cons 函数用于构造列表,它的作用与 carcdr 相反。例如,可以用 cons 从三元素列表 (fir oak maple) 构造出一个四元素列表:

(cons 'pine '(fir oak maple))

执行该表达式后,你会在回显区看到:

(pine fir oak maple)

cons 会创建一个新列表,新列表以指定元素开头,后跟原列表的所有元素。

我们常说 cons 将一个新元素放在列表开头,或者将元素附加、压入列表,但这种说法可能造成误解:cons 并不会修改已有列表,而是创建一个新列表。

carcdr 一样,cons 也是非破坏性的。