2012-11-16 63 views
0

我是Lisp的新手,不知道如何訪問:DIM值!下面的代碼:Lisp接受值(Lisp新手)

(defstruct peca 
    dim 
    val) 

(setf exemple #S(PECA :DIM 2 :VAL 1)) 

我怎樣才能得到的:DIMexemple價值? 當我嘗試exemple-dim它說variable -DIM has no value

回答

4

defstruct定義了閱讀器功能等等。這些默認名稱的格式爲structname-slotname,在您的情況下給出peca-dimpeca-val

有一個在HyperSpec, here.

+1

jwmc進一步的信息已經回答了你如何訪問這些值的直接問題。你應該知道,如果你不喜歡「classname + hyphen + slot-name」的默認樣式,你可以使用:conc-name選項來爲最初的部分指定更好的東西(通常更短)。現在,我建議您不要自己輸入#S(...)。 Lisp以這種方式打印它,但您應該使用自動定義的(make-peca:dim ...:val ...)構造函數。 – khedron