我知道概念上的状态是什么,但我不明白在这个例子中它是如何实现的: https ://github.com/quil/quil/blob/master/examples/gen_art/31_oo_circles.clj
我只是没有看到它。状态实现发生在第100、109 和 137行:
98-100:
(defn mouse-released []
(add-circles (state :circles)))
109:
(set-state! :circles circles*)
135-140:
(defn draw []
(background 255)
(let [circles* (state :circles)
circles (swap! circles* update-circles)]
(doseq [c circles]
(draw-circle c))))
这些线路上发生了什么?
设定状态!是一个 Quil 方法,它的实现可以在https://github.com/quil/quil/wiki/set~state%21找到