一个好的书面代码更容易阅读,所以我想以最好的方式编写我的代码。为了做到这一点,我需要在函数内部移动一些代码。在这种情况下,我在外部定义了局部变量,应在函数中调用该局部变量:
let postman nobody
ask one-of turtles [
set postman my-postman
set shape "person"
; CHECK IF THERE IS ANY EMAIL FOR ME - function from here
if empty? mailbox [
... ; omitted code for brevity
]
]
我想改善将邮箱检查部分移到函数中的代码的阅读。但是,代码的某些部分取决于邮递员,即在外部定义的局部变量。
考虑到此变量,创建这种功能的正确方法是什么?
尚不清楚您要做什么,但是简单地调用一个函数并不困难。例如:
ask one-of turtles
[ set postman my-postman
set shape "person"
if empty? mailbox [ do-something ]
]
to do-something ; turtle procedure
set color red
set size 5
end
一旦用ask one-of turtles [
输入了括号,NetLogo就会出现在乌龟上下文中。也就是说,假装XX是被询问的乌龟,而这些事情正在XX发生。那只乌龟将被传递到“做某事”程序,它仍然处于乌龟上下文中,并且这些情况将在XX发生。