cons
必须有一个要附加的列表。11 你不能从绝对的空白开始。如果你正在构建一个列表,你需要至少在开头提供一个空列表。以下是一系列的cons
表达式,用于构建一系列花的列表。如果你在GNU Emacs中的Info中阅读这个,你可以按照通常的方式评估每个表达式;值将在这个文本中以‘⇒’打印出来,你可以将其解读为“评估为”。
(cons 'buttercup ()) ⇒ (buttercup)
(cons 'daisy '(buttercup)) ⇒ (daisy buttercup)
(cons 'violet '(daisy buttercup)) ⇒ (violet daisy buttercup)
(cons 'rose '(violet daisy buttercup)) ⇒ (rose violet daisy buttercup)
在第一个例子中,空列表显示为()
,并构建了一个由buttercup
后面跟着空列表的列表。正如你所见,空列表在构建的列表中没有显示。因为空列表中没有任何内容,通常来说,空列表是不可见的。
在第二个例子中,(cons 'daisy '(buttercup))
通过将daisy
放在buttercup
前面构建了一个新的两元素列表;第三个例子通过将violet
放在daisy
和buttercup
前面构建了一个三元素列表。
实际上,你可以将元素cons
到原子上以生成一个点对。这里不讨论点对;参见Dotted Pair Notation in The GNU Emacs Lisp Reference Manual。