有没有办法在Visual Studio.NET中调试单个文件?
我还是C++的新手,但我想开始学习如何使用调试器,并且现在我正在编写非常小的文件。
似乎如果只有一个源文件,它就不会让我调试,但是一旦我添加另一个文件,我就可以了。 我正在使用VS.net 2008。
似乎如果只有一个源文件,它就不会让我调试,但是一旦我添加另一个文件,我就可以了。 我正在使用VS.net 2008。
它不需要另一个源文件,而是需要一个项目文件。
Visual Studio 需要一堆信息来知道如何编译和调试您的源代码。例如要使用哪些优化设置、在哪里查找boost
头文件等。
请尝试以下操作:转到文件->新建->项目...
,选择一个win32控制台应用程序。在下一个向导中,转到应用程序设置
,选中"空项目",然后点击"确定"。
现在您有了空项目和解决方案文件,可以将它们复制/粘贴到任何想要它们的地方;要进行调试,只需打开.sln
文件,将您的单个.cpp
文件拖入其中,然后按F5即可。
int main ()
{
for (int i = 0; i < 100; i++)
printf ("Hello World ... etc \n");
}
然后在控制台上设置我的环境(从cmd.exe):
vcvars32
cl /Zi blah.cpp
现在我有一个可以运行的blah.exe文件。如果我想要调试blah.exe,我只需要从VS2008中打开一个项目并选择blah.exe而不是项目文件。我可以在IDE中打开blah.cpp并运行(F5),设置断点(F9)并进行调试(F10,F11)。
你在尝试调试的cpp文件中是否定义了主程序?使其工作的cpp文件是否有主程序?
你可以编译cpp文件,但语言定义应用程序的入口点为
int main()
{
}
在VS.net 2008中创建一个Visual C++控制台应用程序,并将要调试的cpp文件添加到项目中。
从由VS.Net 2008创建控制台项目时为您创建的主例程中调用在该cpp文件中定义的函数。
我的调试方式是:
如果断点从通常的红点变成黄色三角形,则意味着你没有调试你认为的代码 - 通常情况下,这发生在你的dll未加载时。如果你正在调试一个exe,那么你不会看到这个问题。
此外,请确保已经构建(并且具有Debug项目类型)。
boost
头文件" :-) - Eamon Nerbonne