-- 我确定这是重复的 --
我在 O'reilly 的书中读到过这个 (:
虽然没有推理 ):
在一个简单的 AppleScript 文件中:
script implicitRunHandlerScript
end script
run implicitRunHandlerScript
-- why does this lead to a stack overflow?
最佳答案
您发布的脚本包含一个名为 implicitRunHandlerScript
的子脚本和一个处理程序,即“隐式 run
处理程序”。隐式 run
处理程序包含一条语句:
run implicitRunHandlerScript
子脚本继承其父脚本的处理程序。因此,您的 implicitRunHandlerScript
继承了其父级的实现 run
处理程序。并且继承的隐式 run
处理程序调用 implicitRunHandlerScript
的 run
处理程序,因此它递归地调用自身。
阅读Defining Script Objects和 Inheritance in Script Objects在 AppleScript 语言指南中。
关于applescript - 导致 stackoverflow 的简单 AppleScript——为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14086385/