有谁知道函数结束后是否可以在控制台中 return 没有任何东西用于 elisp?
Does anyone know if it is possible to return nothing in console for elisp after a function ends?
现在每当我尝试不 return 任何东西时,我都会得到 nil 或 t。我的函数的最后一个位置以 if 语句结束,该语句在主体中没有任何内容。所以像这样:
(if (counter<ten)
()
(...))
您的 "nothing in the body" 不是什么都没有 - 它是一个空列表 ()
,与 NIL
.
相同
在 Common Lisp 中,您可以使用 values
的形式来 return 任意数量的值 - 包括零:
* (defun funny (counter ten)
(if (< counter ten)
(values)
(values 'foo 42)))
FUNNY
* (funny 10 10)
FOO
42
* (funny 9 10)
; No value
在 Emacs Lisp 中,您总是 return 恰好一个值。
现在每当我尝试不 return 任何东西时,我都会得到 nil 或 t。我的函数的最后一个位置以 if 语句结束,该语句在主体中没有任何内容。所以像这样:
(if (counter<ten)
()
(...))
您的 "nothing in the body" 不是什么都没有 - 它是一个空列表 ()
,与 NIL
.
在 Common Lisp 中,您可以使用 values
的形式来 return 任意数量的值 - 包括零:
* (defun funny (counter ten)
(if (< counter ten)
(values)
(values 'foo 42)))
FUNNY
* (funny 10 10)
FOO
42
* (funny 9 10)
; No value
在 Emacs Lisp 中,您总是 return 恰好一个值。