在somepath中找到了a.cpp的副本,但是当前的源代码与某些路径中内置的版本不同

时间:2016-02-07 06:41:58

标签: visual-studio visual-studio-2015

在这种情况下会弹出此警告:

  • 开始调试(F5)C ++程序
  • 在调试时编辑一些代码(程序遇到断点然后暂停)[#]
  • 停止调试(Shift + F5)程序
  • 再次开始调试(F5)[*] - >警告:但当前源代码与版本
  • 不同

实际上在步骤[*]中,我想通过步骤[#]中的修改来调试代码。但是,Visual Studio实际上是调试代码而不在步骤[#]中进行修改,因此警告我。

我必须在步骤[*]之前清理项目,以使Visual Studio了解我在步骤[#]中所做的修改。我怎样才能使Visual Studio始终调试我的最新源文件?

额外信息:它是“始终构建”,并在Configuration Manager中选中“构建”框。此外,在步骤[*]中,即使我手动触发“Build”(Ctrl + Shift + B),它也表示我的项目是最新的。实际上我的项目在“Start Without Debugging”和“Start Debugging”中都已过时。我必须清理项目以使我的项目保持最新状态。

视频附加(2分钟),从“新项目”开始https://www.youtube.com/watch?v=0y9RljtS28k

2 个答案:

答案 0 :(得分:1)

更改代码后,您必须重建应用程序。您正在启动旧版本的可执行文件,该版本与源代码文件的最新编辑不同步。调试器正在检测到这一点,并警告您如果在执行期间闯入调试器,您将看到无效信息。

如果Visual Studio在您进行更改后没有提示您重建项目(或者如果它没有自动执行),那么您的IDE中的设置配置错误。访问设置→项目和解决方案→构建和运行,并确保将其设置为"始终构建"而不是"永不构建。"

如果没有解决问题,请确保将项目设置为构建。检查配置管理器(从工具栏中的调试/发布下拉组合框),并确保" Build"选中“调试”和“发布”配置框。

答案 1 :(得分:1)

我自己已经发现它是一个名为Edit and Continue的功能。

它位于Tools - Options - Debugging - General - Enable Edit and Continue

之下

要明确应用代码更改,请在Debug菜单上选择Apply Code Changes [1]。

[1] https://msdn.microsoft.com/en-us/library/esaeyddf.aspx#bkmk_how_to_apply_code_changes_explicitly