bounty还有4天到期。回答此问题可获得+100声望奖励。Cris Luengo想要引起更多关注这个问题:现有的答案没有回答这个问题:如何在特定变量更改值时中断执行?
在MATLAB中,是否可以像在Visual Studio中一样在特定变量上设置数据断点?我在网上和手册上都找不到任何东西。
要明确的是:当该变量在代码中的任何位置(而不仅仅是在一个特定行上)改变值时,数据断点停止执行并进入调试模式。
bounty还有4天到期。回答此问题可获得+100声望奖励。Cris Luengo想要引起更多关注这个问题:现有的答案没有回答这个问题:如何在特定变量更改值时中断执行?
在MATLAB中,是否可以像在Visual Studio中一样在特定变量上设置数据断点?我在网上和手册上都找不到任何东西。
要明确的是:当该变量在代码中的任何位置(而不仅仅是在一个特定行上)改变值时,数据断点停止执行并进入调试模式。
1条答案
按热度按时间ttcibm8c1#
更新日期:2023年4月28日
如果你的变量是一个类的属性,你可以将
SetAccess
更改为private
(或protected
),然后通过类方法更新它,然后你可以使用条件断点捕获它的变化。我很欣赏这个建议只适用于类,是一个重大的变化,一个大的代码库,但它的唯一傻瓜证明的方式,我知道捕捉时,一个变量的变化。
仅供参考:我已经在一个庞大而复杂的代码库上完成了这一点,幸运的是,整个类变量名称始终是一致的,我们有足够的测试用例来捕获设置属性的所有位置。
它执行所谓的条件断点。
您可以在命令行设置它们,但通过编辑器交互式地将它们放入要容易得多(右键单击下一行号并选择“设置条件断点”)
命令行: