visual-studio - 您最喜欢在 Visual Studio 中调试程序的方式是什么?

标签 visual-studio debugging

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。




10年前关闭。




这几天我想出了一个大软件。

我必须在 Visual Studio 2008 中进行调试。

我采取的步骤是:

  • 使用调用堆栈窗口查找我认为可能有错误的代码块。
  • 使用Immediate windows调用一些本地函数来查看数据结构是否
    在这个 block 是正确的。
  • 当我在第 2 步得到结果时,我必须去第 1 步查找错误的来源
    再次使用调用堆栈。

  • 您最喜欢在 Visual Studio 中调试大型或小型程序的方法是什么?

    我不认为运行整个程序并观察所有相关的数据结构是
    调试的好方法。

    最佳答案

    我更喜欢单元测试而不是使用即时窗口,主要是因为这意味着我可以非常简单地一遍又一遍地运行代码(实际上是从构建脚本中)。

    如果您使用即时窗口发现问题并在不添加任何测试的情况下对其进行修复,那么如果同样的问题再次出现,您将不会收到任何警告。通过单元测试,您有一个持续的伙伴来确保任何 future 的更改都不会重新引入错误。

    就我个人而言,我不喜欢单步执行代码——与单元测试相比,我发现它令人沮丧。很容易意外地跨过您想要跨入的东西等。有时这是必要的,但这通常表明您的代码太复杂了。我特别不喜欢调试整个应用程序,而不是在调试器中单步执行单元测试。它通常慢几个数量级。

    关于visual-studio - 您最喜欢在 Visual Studio 中调试程序的方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/575173/

    相关文章:

    c# - 如何在 Visual Studio 2010 中引用 C# 类库项目?

    visual-studio - VisualHg 和 Visual Studio 2010 性能问题

    c# - Web.Config 调试/发布 : Doesn't work

    python - 如何从执行进程任务运行 py 文件?

    visual-studio - Visual Studio 2013 中的服务器资源管理器缺少 Azure 存储节点

    c# - 在 Visual Studio 监 window 口中使用 LINQ 表达式

    c - 负载很大才出现的bug怎么调试?

    c++ - 调试例程 MSVC++ 是否特定?

    javascript - 将深度参数添加到console.log以进行递归

    xcode - 如何仅在某些覆盖上设置符号断点?