Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual c++ 使VC++;重新编译所有文件 我用VisualStudioIDE和VC++编译器编写了一个简单的C++应用程序。p>_Visual C++_Visual Studio 2012 - Fatal编程技术网

Visual c++ 使VC++;重新编译所有文件 我用VisualStudioIDE和VC++编译器编写了一个简单的C++应用程序。p>

Visual c++ 使VC++;重新编译所有文件 我用VisualStudioIDE和VC++编译器编写了一个简单的C++应用程序。p>,visual-c++,visual-studio-2012,Visual C++,Visual Studio 2012,在这个应用程序中,我有一个错误的文件,它也会影响其他文件。当我编译它时,正如预期的那样,我得到了错误。现在,如果我从我的项目中删除对该文件的所有引用,然后运行它,编译器仍然会在错误中退出。在编译消息中,我看到了错误文件的文件名。防止这种情况发生的唯一方法是删除该文件的所有内容,或者删除该文件,然后重新编译 我的猜测是,因为VC++是“智能”的,所以它可以保存编译,当编译不受影响时,它不会重新编译。但是,由于错误的文件会影响其他文件,因此一些编译错误(不是全部)会保留下来 有人知道如何禁止这种行为

在这个应用程序中,我有一个错误的文件,它也会影响其他文件。当我编译它时,正如预期的那样,我得到了错误。现在,如果我从我的项目中删除对该文件的所有引用,然后运行它,编译器仍然会在错误中退出。在编译消息中,我看到了错误文件的文件名。防止这种情况发生的唯一方法是删除该文件的所有内容,或者删除该文件,然后重新编译

我的猜测是,因为VC++是“智能”的,所以它可以保存编译,当编译不受影响时,它不会重新编译。但是,由于错误的文件会影响其他文件,因此一些编译错误(不是全部)会保留下来


有人知道如何禁止这种行为吗

要重新编译所有文件,您可以全部重新编译,或进行干净的生成。 是的,如果事情没有改变,VC++会保存编译,它可能会说是最新的。 我不认为您可以禁用它,但是一个干净的构建应该能够解决它。如果这是问题的全部,也要检查它是如何链接的,在那里你应该能够删除对文件的引用


生成应该在“生成”选项卡下。

可以显示错误吗

如果文件包含实际的功能代码,那么是否修复编译错误? 如果文件不包含功能代码,那么它在项目中做什么

< P>我希望这个“错误”文件是一个包含在其他C++文件中的Head(.h)文件,因此当它试图编译C++文件时,它会生成一个错误(或更多)每C++文件。 如果您只是从IDE项目中删除该文件;编译器仍将包含该文件(因为它仍然存在于磁盘上);并将继续生成错误

如果您确实删除了磁盘上的文件,则会出现其他类型的错误


在所有情况下,只要修改编译错误,就可以在编辑或添加文件时做出正确的二进制,例如:/p>< p> MSBuw和VisualC++编译器。即使没有完整的重建,编译后的可执行文件也可能是正确的。如果您看到意外行为,很可能是由以下原因之一引起的:

  • 运行项目之前,请检查Visual Studio是否已配置为生成项目。检查工具下的以下选项→ 选项。。。→ 项目和解决方案→ 构建并运行

    • 生成前:保存所有更改
    • 运行时,当项目过期时:“提示生成”或“始终生成”
    • 运行时,发生生成或部署错误时:“提示启动”或“始终启动”
  • 如果VisualStudio询问您是否要运行旧版本的程序,则删除该文件可能会导致编译错误,因此在更正之前,编译的二进制文件肯定会过期

  • 如果项目包含直接或间接包含“yourRemovedFile”的文件,则从项目中删除该文件可能无效

  • Visual Studio错误列表独立于编译器报告问题。您可能看到报告的旧错误与您的项目不再相关,但尚未从UI中清除。在这些情况下,当您运行程序时,仍然会得到相同的结果。您还可以通过重新启动VisualStudio并查看错误消息是否持续,来确定这是否是您的问题


  • 删除文件后,是否执行了“全部重建”?否则,文件可能会像您正确指出的那样保留out@claptrap我只需单击“重建”,但在右下角显示它正在重建所有,所以我想是的sI会这样做,但文件有12行,包含一个小的10k+错误。奇怪的是,当我简单地注释掉编译器抱怨的行时,编译,注释它们,编译,它工作得很好。(当删除了对该错误文件的所有引用,但该文件仍在项目中时)如果该文件有12行,请使用12行编辑原始问题,并添加它生成的两个错误。