嗨,我想改善我的数学库,
当我计算某物的长度时
assert( !equal(len,0.0));
const f32 invsqrt = 1.0/sqrt(len);
X*= invsqrt;
Y*= invsqrt;
Z*= invsqrt;
这段代码很好,如果我做错了除以零,代码就会中断
“运行时已请求在.. Vector.h第88行中断应用程序”
很好,但是我想做得更好,我想表明错误在哪里。
因此,我不想显示“ vector.h”和第88行,而是要显示“ main.cpp”“第15行”(如果在main中的第15行调用了getLength函数)。
Vector只是标题,所以我认为实现这一点是可能的(只是一种感觉)..但是如何呢?
提前致谢。希望您能看到这样做的用处。
最佳答案
那就是代码所在的地方,因此它将被破坏。
我认为您的意思是查看调用堆栈。
在Visual Studio中,它位于:调试-> Windows->调用堆栈。
调用堆栈可以向您展示如何到达该行代码(在工作流程中调用了哪个函数)
关于c++ - 委托(delegate)断言,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14754084/