我正在爲我的計劃決賽和本地州的對象學習一直是一個艱難的課題。瞭解當地國家的對象 - 計劃
這是我期末考試中的一個問題,我需要幫助。
(define (make-incrementer n)
(let ((old 0)
(new 0))
(lambda()
(cond ((< new n)
(set! old new)
(set! new (+ new 1))
old)
(else
(set! old 0)
(set! new 1)
old)))))
(define a (make-incrementer 3))
(define b (make-incrementer 3))
(define c a)
; 1) (a)
; 2) (a)
爲什麼當第二次調用a
時返回1?我正在看代碼,我們給它的n
總是3.所以不會總是做else
的情況嗎?
有時,理解是通過代碼佈局來促進的,因爲這使得不同名稱的範圍**顯而易見**。 – GoZoner 2013-05-14 02:28:05
@GoZoner事實上,感謝上帝的C-M- \在emacs – jozefg 2013-05-14 02:31:09
和'M-x untabify'發佈到SO – GoZoner 2013-05-14 02:33:12