You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#调试技巧:无需修改代码,判断if语句中哪个函数触发条件成立

如何判断C#逻辑或条件中哪个函数触发了分支?

不用改代码也能轻松搞定,给你几个实用的调试技巧:

  • 用调试器的返回值变量查看结果
    在Visual Studio里,当你单步执行过func1()之后,直接打开即时窗口(可以按Ctrl+Alt+I调出),输入$ReturnValue就能拿到func1()的返回值。如果这个值是true,那不管func2()返回啥,都会进入then分支;如果是false,那必然是func2()返回了true才触发的分支。另外,你也可以看自动窗口,里面会自动显示最近函数调用的返回结果。

  • 利用短路特性+逐语句调试
    逻辑或||有短路求值的特性:如果func1()返回true,func2()根本不会被执行。所以调试的时候别用“逐过程”(Step Over),改用“逐语句”(Step Into):

    • 要是能进入func2(),说明func1()返回了false,此时func2()的返回值就是决定条件的关键;
    • 要是执行完func1()直接跳去then分支,那肯定是func1()返回了true。
  • 验证两个函数是否都返回true
    如果想确认是不是两个函数都返回true,可以在执行完func1()且已知它返回true后,在即时窗口里直接调用func2()(注意:如果func2()有修改程序状态的副作用,别这么干,会影响调试流程),看看它的返回值就行。

内容的提问来源于stack exchange,提问作者Sabuncu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:21:48