Giả sử tôi cần liên kết các biểu tượng với các thư mục và điều này sẽ chỉ cần được thực hiện cho một số lượng nhỏ các boundp
biểu tượng.
Theo cách tôi thấy, có hai cách dễ dàng để làm điều đó:
- Lưu trữ liên kết này trong một biến riêng biệt (alist hoặc bản đồ băm). Bằng cách này, thư mục của mỗi biểu tượng sẽ có thể truy cập được
(cdr (assq SYMBOL my-alist))
. - Lưu trữ này trong một tài sản biểu tượng. Bằng cách này, nó sẽ có thể truy cập được với
(get SYMBOL 'my-directory)
.
Cái nào trong số này sẽ là cách thành ngữ để theo dõi thông tin này?
(defvar s 5) (put 's 'd "c:/abc/") (let ((s 4)) (message "d: %s, val: %S" (get 's 'd) s))
. Và OP: tại sao bạn nói về "chức năng" chứ không phải biểu tượng? Chắc chắn là tôi đang thiếu gì đó.
let
-biết rằng biểu tượng chuỗi dir (được sử dụng làm giá trị prop) không phải là một vấn đề. (Hãy bỏ qua nếu không thích hợp.)