对于VS2008(C ++)生成的链接器映射文件,符号“__unwind $”是什么意思?我的应用程序的链接器映射文件中有很多它们。
我有一个日志,说明在特定偏移处发生崩溃,说'x'。当我查看此偏移量的链接器映射时,我发现此__unwind $ 41357对应于偏移量。
通常还有任何参考可以理解链接器映射文件的文件格式吗?
答案 0 :(得分:3)
抛出异常时,堆栈会发生“展开”。 __
前缀表示编译器生成的符号。因此,根据描述,您会在throw和catch之间发生崩溃。我的假设是调用的析构函数是从__unwind$
函数调用的。内联析构函数不会有自己的堆栈框架,因此它会显示在调用__unwind$
函数中。
答案 1 :(得分:0)
只是猜测,但我会说这是抛出异常时处理堆栈展开的代码的一部分。