您好,登录后才能下订单哦!
断点调试运用的好的情况之下,可以轻松的解决DeBugger的任务。是时候总结一下VS的断点调试了。
首先讲一下本篇的一个重点 : “断点条件”。断点条件在有些IDE中叫做“断点属性”(例如:Flash Builder)。
步骤:
①:在断点上 右击-》条件... 如下图所示:
②:在弹出的《断点条件》面板中,设置条件 name == "Aonaufly" 。如下图
(此处我想额外谈谈Flash Builder的条件 , 在FB中写为name = "Aonaufly"为name设值)
此时应该注意的是,“为true(T)”表示当条件为true时,进入此断点调试。另外注意的是此断点行“name”,所以在《断点条件》面板中可对name进行条件判断。
测试了一下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace NetWorkTest { public class Program { public string GetString(string @name) { string _back = "Hello " + @name; Console.WriteLine(_back); return _back; } public static void Main(string[] args) { Program pro = new Program(); string @rusult = pro.GetString("Aonaufly"); Console.WriteLine(@rusult); string @cc = pro.GetString("Kayer"); Console.WriteLine(@cc); Console.Read(); } } }
经测试string @rusult = pro.GetString("Aonaufly");此行可进入条件断点,而string @cc = pro.GetString("Kayer");则无法进入断点调试。
其次,关于其他的调试快捷建 F5 ,F10 , F11
F5 : 直接执行到下一个断点
详解: 我们先在Line21和Line24行处各打上断点。我们运行程序后,程序会自动断在Line21这个端点上。
当我们按F5的时候,程序跳到下一个断点也就是Line24号断点上。中间的Line22和Line23都不会断在其处。另外Line21行处的GetString方法也不会进入其方法执行,总而言之就是直接跳到Line24(下一个断点处)。我们再按一次F5的话,程序就直接执行完毕了。
F11:逐语句执行,会进入到断点处方法的内部去执行
详解: 我们先在Line21和Line24行处各打上断点。我们运行程序后,程序会自动断在Line21这个端点上。
当我们按F11后,因为Line21处有方法GetString,程序会进入到GetString方法内部。如下图:
F10 : 与F11很像,不同的地方时,它不会进入到断点处的方法内部去执行(如:Line21处断点的GetString方法),而是直接执行断点后面的语句如(Line21后面的Line22行)
*命中条件
可以在VS的“输出”窗口中打印信息
测试:
public int Test(int x) { if (x <= 1) return 1; return Test(x - 1) + Test(x - 2); }
如下图,在方法Line17处加一个断点。再如下图进行操作。
在弹出的“命中断点时”的窗口中,进行如下操作。
值得注意的是 : 继续执行的意思是,在此处不进行中断调试,程序继续运行,只是在“输出”窗口中打印信息
运行程序,看“输出”窗口如下
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。