c++ - VC++ 2010 忽略断点

标签 c++ visual-studio-2010 debugging breakpoints

在我回家度周末之前的上周五,我的代码中的断点工作正常。今天,它们工作不正常。

从上周五开始,我

  • 重新启动我的电脑
  • 从 TFS 代码库下载新的源代码
  • 清理并构建了 Release模式的整个解决方案
  • 为 Debug模式清理并构建了整个解决方案
  • 从两个源模块中添加/移动了几行
  • 清理并重建了我正在处理的项目。
  • 在没有参数的情况下调试了解决方案——断点工作正常
  • 使用参数调试解决方案以仅运行到我的代码部分——断点不起作用,但从程序的输出来看,很明显该部分代码已运行。
  • 我不记得我可能还做了什么导致这种行为。

我以前见过这个,但我不记得我是如何纠正这种情况的。

这是一个单元测试项目,因此它永远不会以 Release模式构建。我已经检查了文件上的日期/时间戳,以确保我刚刚构建的可执行文件是我将要运行的文件。

如果我在可执行文件的入口点设置断点,调试器会停在那里,但不会停在我设置的任何其他断点处。

这完全是 native 代码,所以请不要为不适用的 .NET 选项而烦恼,因为我正在用 C++ 编写代码,所以我无论如何也无法访问。

什么会导致IDE突然这样关闭调试?

提前致谢

理查德约翰逊

最佳答案

有一件事我几乎不想提——你确定你的解决方案已经完全构建了吗?否则,您的断点将与二进制文件不同步,VS 将禁用它们。您会看到断点图标上有黄色覆盖层。假设构建良好,如果 NCB (Intellisense db) 文件已损坏,您可能必须删除它。进行干净的重建不会这样做。如果这没有帮助,请告诉我们您的确切症状是什么 - 断点是否在 IDE 中“亮起”,但只是没有触发?还是 IDE 拒绝完全打开断点?

关于c++ - VC++ 2010 忽略断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16286036/

相关文章:

c++ - 为什么 IE 不监听 ActiveX 事件?

c++ - GLM : How to transpose a vector?

c# - 在整个 Windows 窗体应用程序生命周期中只运行一次代码

c - 字母 A 和 M 对预处理器意味着什么

c - c中的指针有问题

c++ - %p说明符仅用于有效的指针吗?

c++ - iMacro 查找元素

c# - int++ 什么时候递增?

visual-studio-2010 - 如何安装 powershell 作为先决条件?

javascript - 获得比 "[object Object]"更有用的值来进行调试?