Visual Studio控制台调试错误的文件

时间:2018-05-16 03:37:34

标签: c++ visual-studio

我创建了一个空项目,并在项目中添加了两个(.cpp)项。请记住,我是C ++ Visual Studio的初学者,因此我没有使用任何代码以某种方式连接这两个文件。

问题:调试器可以调试我的第一个文件,但是当我打开第二个文件并通过单击“本地Windows调试器”(当我在第二个文件中时单击)开始运行时,无论是否有错误,它仍将继续运行第一个文件。

当我点击“Local Windows Debugger”后查看调试窗口时,我看到文件路径指向第一个文件。

我尝试过:完全关闭第一个文件,关闭visual studio并从文件夹路径打开第二个文件,关闭第一个文件中的断点并在第二个文件中打开

我想知道:如何才能运行第二个文件?我是否必须使用命令提示符将空项目中的两个项目分开?我顺便使用Windows 10。

我搜索了我的问题,但我很难找到一个提供解决方案的指南

1 个答案:

答案 0 :(得分:1)

问题:

Dracep无法调试他们拥有的两个文件中的一个。这是因为他们在两个文件中都有一个主函数定义,导致编辑器偏爱另一个。

解决方案:

通过在应用程序中设置第三个专用入口点(I.E.只有一个入口点,然后包含其他文件),您可以决定在任何给定时间调试哪个文件。

例如,拥有一个名为main.cpp的文件,然后使用#include "filename.h"包含其他两个文件。

从那里你可以包含文件并通过调用该文件中的函数来进行代码检查,而不是使用main并逐步降低它,从而导致长期的可伸缩性问题。

请参阅this question on separating your logic from your definitions,因为标记正确的答案是大多数C ++项目的标准。

这样,您可以执行以下操作:

#include "File1.h"
#include "File2.h"

int main(int argc, char** argv)
{
    File1Class file1Class;
    File2Class file2Class;
    //Do whatever tests you like with either.
}