Visual c++构建/调试问题
Visual C++ Build / Debugging Issue
我在Visual Studio中遇到了一个奇怪的问题。每当我更改代码和构建时,即使我得到了构建成功的通知(如果有的话,它也显示了代码中的错误并且没有构建),可执行文件实际上是以前的构建。这真是太烦人了。
如果我在新行上放了一个断点,断点将被禁用,并显示
当前不会命中断点。没有可执行代码与这条直线相关。可能原因包括:预处理指令或编译器/链接器优化
如果我在旧的代码行中设置了断点,它会停止处理,但会显示以下消息
源代码与模块构建时不同。你想要调试器如何使用它?
我以前从来没有遇到过这个问题,源代码在我笔记本电脑的硬盘上。它马上就省了。解决这个问题的唯一方法是每次手动Clean
整个解决方案,而不是基本上按F5。
感谢大家的建议。我的错误是我在.cpp
文件中定义了类,这在某种程度上导致链接器做奇怪的事情(可能是缓存)并链接旧对象。我把文件重命名为.h
,一切工作如预期
可能您的代码没有构建,或者以您意想不到的方式构建。
您可以通过在某处插入#error foobar
预处理器指令来检查。如果在构建时没有出现错误,那么您就有麻烦了!
但我从未使用过Visual Studio(我只使用Linux),所以我不能帮助更多。
可能您已经设置了一些其他项目的主项目并构建它。
我认为你正在使用来自另一个项目的源文件(例如:如果你正在使用dll说,my.dll(这是使用一些源文件说,mycpp.cpp);在您当前的项目中)。当您调试到文件(mycpp.cpp)时,也许您修改了它。
因此,您需要首先在创建my.dll的项目中重建dll (my.dll)。或也许您已经在窗口中打开了mycpp.cpp的实例&在另一个窗口中调试。你应该重新构建dll。
如果你没有使用其他项目的文件,那么我猜不出原因…但我仍然建议使用rebuild而不是clean &构建 .
请澄清一下你的问题。@David期待你的回复…
我一直在寻找这个问题的答案,因为我也被它卡住了。我的一个同事刚刚给了我一个有效的解决方案。是的,它看起来真的很愚蠢,但它对我有用。
我们的解决方案有许多项目。他让我选择我想要闯入的项目,并将其设置为启动项目(右键单击项目名称,选择"设置为启动项目")。我很绝望,所以我努力了。令我惊讶的是,它居然有效。
既然我已经打开了这个窗口,我想我应该分享一下,以防别人遇到这个问题。
我也面临同样的问题。但理智并不像你那样。然后我重新启动visual studio,它就像预期的那样运行了。
- 如何针对特定情况调试和修复此双自由内存损坏问题
- 需要帮助调试"attribute parser"!C++ 来自黑客排名的问题
- 调试模板时出现问题.专门针对 Linux GCC 7、GCC 6、GCC 5、GCC 4.9 错误构建失败:模板参数 1
- 调试C++程序时遇到问题
- 在发布模式下崩溃,但如果可调试为 true - 不是..什么是可能的问题
- C++ CDB 调试器问题
- 如何调试错误代码 77:cudaErrorIllegal地址当 cuda-memcheck 没有发现问题时
- 如何调试我的 OpenGl 问题
- C Microsoft Visual Studio 2015调试问题(找不到或打开PDB文件.)
- 在OS X上使用MacPorts GCC调试问题
- 调试问题:(
- DEV-C++5.11 STL迭代器的调试问题
- 发布生成调试问题
- Visual Studio 2010 C++的调试问题-显示奇数
- 使用VS2013的奇怪(c++)调试问题
- Mongo-cxx-driver库构建,但存在持久链接和调试问题
- Visual c++构建/调试问题
- GDB调试问题:在GDB调试步骤中看到的虚值
- 使用STL列表调试问题
- Eclipse C++控制台IO的运行/调试问题