根据我的老师告诉我的,我应该使用 let 声明局部变量和 setf 声明全局变量。
我尝试运行以下代码:
(let (state-list (problem-initial-state problem))
(print state-list))
我得到零。
但是,当我尝试以下操作时:
(setf state-list (problem-initial-state problem))
(print final-list)
我得到了想要的值(问题初始状态问题中的值)。
这是为什么?
PS:我为这些初学者问题道歉,我很难进入 LISP,来自 C 背景。