链接器映射文件中的__unwind $是什么

时间:2009-03-13 08:26:22

标签: c++ visual-c++ linker

对于VS2008(C ++)生成的链接器映射文件,符号“__unwind $”是什么意思?我的应用程序的链接器映射文件中有很多它们。

我有一个日志,说明在特定偏移处发生崩溃,说'x'。当我查看此偏移量的链接器映射时,我发现此__unwind $ 41357对应于偏移量。

通常还有任何参考可以理解链接器映射文件的文件格式吗?

2 个答案:

答案 0 :(得分:3)

抛出异常时,堆栈会发生“展开”。 __前缀表示编译器生成的符号。因此,根据描述,您会在throw和catch之间发生崩溃。我的假设是调用的析构函数是从__unwind$函数调用的。内联析构函数不会有自己的堆栈框架,因此它会显示在调用__unwind$函数中。

答案 1 :(得分:0)

只是猜测,但我会说这是抛出异常时处理堆栈展开的代码的一部分。