我从 emacs wiki 复制粘贴了这个例子:https : //www.emacswiki.org/emacs/DynamicBindingVsLexicalBinding#toc2
维基说打印出来的东西应该是1,但对我来说它打印的是2,表明词法绑定不起作用。有谁知道为什么会这样?
我在 Emacs v26 上。Debian。
这是我的缓冲区中的字面意思。我正在评估它M-x eval-buffer。
;; -*- lexical-binding: t;-*-
(let ((a 1)) ; binding (1)
(let ((f (lambda () (print a))))
(let ((a 2)) ; binding (2)
(funcall f))))
Run Code Online (Sandbox Code Playgroud)
我会很感激你的帮助。