【发布时间】:2020-12-12 12:38:16
【问题描述】:
我有一个带有多个返回语句的函数。当即将在此函数中执行 return 语句时,我想停止执行我的程序(在调试期间)。
一种方法是在所有返回语句中添加断点,但还有其他方法吗?
【问题讨论】:
-
还有这样的:https://docs.microsoft.com/en-us/windows/win32/api/debugapi/nf-debugapi-debugbreak 可能搜索替换return 为
DebugBreak(); return -
尝试在函数末尾的右大括号上设置断点。这仅适用于调试版本。
-
函数退出前。
-
如果你在 1 个函数中有这么多的 return 语句,以至于给它们设置断点是一件苦差事,那么也许是时候重构你的函数了。
-
@pasha:这里要传达的信息是,微软要为 Visual Studio 添加这样一个功能需要做很多工作,但由于几乎没有用户,这将是一个相当无价值的功能将需要该功能。几乎没有人有这么多的回报。主要的例外是在生成的代码中,然后您将在生成器中处理它,而不是在调试器中。
标签: c++ visual-studio debugging