0
我從包中導出幾個符號,並在case語句中內部使用它們。我想通過符號(例如中等大小)作爲一個關鍵字參數中的一個來的一般方法,是這樣的:如何將符號作爲關鍵字參數傳遞?
(solve problem :optimize-for :medium-size :another-keyword t)
但是這給「奇數編號的& KEY參數」錯誤。我是否誤解了有關符號或關鍵字參數的基本知識?
我從包中導出幾個符號,並在case語句中內部使用它們。我想通過符號(例如中等大小)作爲一個關鍵字參數中的一個來的一般方法,是這樣的:如何將符號作爲關鍵字參數傳遞?
(solve problem :optimize-for :medium-size :another-keyword t)
但是這給「奇數編號的& KEY參數」錯誤。我是否誤解了有關符號或關鍵字參數的基本知識?
即意外的行爲,如果solve
已經以類似於的方式被定義爲:
(defun solve (problem &key optimize-for another-keyword)
...)
然而,如果已導出的符號medium-size
從your-package
,它通常被稱爲'your-package:medium-size
(或,如果你有進口your-package
,只需'medium-size
)。
如果從包中導出'medium-size',它應該是'packagename:medium-size',而不是':medium-size'。 – Barmar
顯示通用函數的參數列表。你可能錯過了其中一個位置參數。 – Barmar
關鍵字參數的值可以是任何值,使用符號沒有什麼特別之處。 – Barmar