调试版本中的数据突然变为NULL

时间:2011-12-08 03:59:26

标签: c++ debugging

我有一个从DLL调用函数的进程,在DLL内部我分配了一个结构,该结构用于DLL内部的不同函数,并且在调用时(通过进程)总是通过引用传递给那些函数。 事情很好,但是当我进行调试构建(使用Visual Studio 2008)时,很多时候,进程会崩溃,因为该结构突然变为NULL 情况是这样的:

  • 进程调用Func1,它分配结构并初始化 变量
  • 进程调用Func2,它对结构进行一些处理, 修改一些变量......
  • 进程调用Func3,我在很多地方使用结构,然后在 代码中的一个地方(我在哪里分配一个字符串( std :: string myStr = myStructre-> myStrucString)进程崩溃了 访问冲突错误...我检查调试器以找到它 myStructure及其所有变量突然变为NULL ....

任何想法?! (发布版本非常罕见)

1 个答案:

答案 0 :(得分:2)

好吧,您可以尝试使用data breakpoints找出它的修改位置。