% Function COPY-ALIST
Function COPY-ALIST
copy-alist
alist => new-alist
alist - 連想リスト
new-alist - 連想リスト
copy-alist
は、alistのコピーを返却します。
alistのリスト構造がコピーされ、 alistの要素のコンスもまたコピーされます (ただしコンスのみ)。 alistによって直接・間接に関わらず、 参照されている他のオブジェクトは、 引き続き共有されます。
(defparameter *alist* (acons 1 "one" (acons 2 "two" '())))
*alist* => ((1 . "one") (2 . "two"))
(defparameter *list-copy* (copy-list *alist*))
*list-copy* => ((1 . "one") (2 . "two"))
(defparameter *alist-copy* (copy-alist *alist*))
*alist-copy* => ((1 . "one") (2 . "two"))
(setf (cdr (assoc 2 *alist-copy*)) "deux") => "deux"
*alist-copy* => ((1 . "one") (2 . "deux"))
*alist* => ((1 . "one") (2 . "two"))
(setf (cdr (assoc 1 *list-copy*)) "uno") => "uno"
*list-copy* => ((1 . "uno") (2 . "two"))
*alist* => ((1 . "uno") (2 . "two"))
なし。
なし。
なし。
なし。