RX0630

领域: 引擎

错误消息

嵌套深度超过了机器的栈所能承受的范围:%s(%s)

消息中的 %s 表示引擎抛出错误时填入的具体内容。

小故事

你的脚本里,括号套括号,调用套调用,嵌套得太深了,引擎说:超过了机器的栈所能承受的范围。别担心,在一台正常的机器上,这个深度是几十万层,普通脚本根本碰不到。引擎没有硬性规定一个深度数字,界限是机器自己的,由它的内存大小决定。如果你真碰到了,引擎会拒绝,而不是让整个进程掉出栈的末端崩掉。解析的时候发现的,提示里会写出行号;运行时求值嵌套模板时发现的,也会说清楚。修法有两个:把嵌套压平,比如先把里面的值绑定到一个名字上,再使用它;或者换一台内存更大的机器。

文本来自 Rush 引擎的错误目录。