2014-02-19 115 views
0

我想用VS2013 express来调试一个相当复杂的程序。我希望它能在每行代码中暂停。虽然我可以在每一行代码上放置一个断点,但这是单调而低效的。有没有办法通过步骤来调试应用程序以阻止我找到问题?我正在尝试调试一个几乎没有空格的1000行OpenCV程序,这是我一次性写入而不需要调试一次!在Visual Studio 2013 express中调试

+0

这完全是我在找的! )。谢谢!现在,我将能够找到错误。显然,似乎findContours正在触发一个断点并导致一个损坏的堆!如果有人知道该怎么做,这将有所帮助! – yash101

回答

3

在代码的第一行设置断点,运行,直到遇到断点,然后通过各行的单步与任一F10(步过)或F11(步入)。

将代码缩小到特定区域通常会更有用,方法是将多个断点进一步分开,然后检查每个断点处的变量状态(使用观察点更容易)来尝试并隔离问题。一旦你能够将范围缩小到一个特定的功能或方法,你可以设置一个断点,并通过代码更慢地确定哪些实际上不能正常工作。

+0

这就回答了!我很愚蠢,写了整个程序,并没有一次性测试,所以当我有100个崩溃的站点时,我不得不做一个彻底的调试:(:D:P – yash101

+0

@ yash101 - 我会重新开始并实现每个函数根据需要复制原始代码 - 然后你有一个崩溃的网站在 – Mark

+0

我得到的程序工作。我花了一个小时,并完全重写代码,这次使用常识的力量。现在,我的程序的工作,比我预期的要好,代码将在明年的GitHub上提供(在这个FRC的季节之后),供大家检查一下! – yash101

相关问题