我遵循的书“职业哈克斯和内科”由弗朗哥庞蒂切利和李麦克尔西尔维斯特。
第7章-当事情出错时,是关于错误和例外的。
当我遵循pg.192 (我在这里已经最小化)上概述的代码时,我有
class CallStack {
public static function main():Void {
var i:Int = 0;
i = multiply(i, 6);
}
public static function multiply(a,b) {
return a * traceStack(b);
}
public static function traceStack(a) {
var cs = haxe.CallStack.callStack();
trace(haxe.CallStack.toString(cs));
return a;
}
}当我编译这段代码时,它返回一个空的callStack。
根据Haxe,callStack()函数
返回调用堆栈元素,如果不可用,则返回空数组。
所以我的问题是,
为什么堆栈元素不可用?
还有什么会导致callStack函数返回一个空数组呢?
是否有更好的方法来检索这些信息?
发布于 2014-09-30 10:12:30
除非您在调试模式下运行,否则可能无法使用堆栈跟踪。
https://stackoverflow.com/questions/26077930
复制相似问题