7.1 vs中的调试
调试:debug,调试的信息包含在.pdb中
发布:release
7.1.1非中断(正常)模式下的调试
将文本输出到IDE的output窗口里,output窗口包含两种模式:bulid(编译)和Debug(运行)
1.输出调试信息
方法:Console.WriteLine()替换为
Debug.WriteLine();仅在调试模式下运行
Trace.WriteLine();可用于发布程序
2.跟踪点
注意与断点的区别
7.1.2中断模式下的调试
1.进入中断模式
快捷键:F9
7.2错误处理
7.2.1try...catch...finally
try
{
...///包含抛出异常的代码
}
catch
{
...//包含抛出异常时要执行的代码
}
finally
{
...//始终会执行的代码
}
在try块的代码中出现异常后,发生的事件依次是:
-try块在发生异常的地方中断程序的执行。
-如果有catch块,就检查该块是否匹配已抛出的异常类型。如果没有catch块,就执行finally块(如果没有catch块,就一定要有finally块)
-如果有catch块,但已发生的异常类型不匹配,就检查是否有其他的catch块
-如果有cathch块匹配类异常类型,就执行该包含的代码,再执行finally(如果有)
-如果catch块都不匹配,就执行finally
ps:如果try里面没有发生异常,可以不写finally,但是你都写了try,不写finally那何必写try呢?
调试:debug,调试的信息包含在.pdb中
发布:release
7.1.1非中断(正常)模式下的调试
将文本输出到IDE的output窗口里,output窗口包含两种模式:bulid(编译)和Debug(运行)
1.输出调试信息
方法:Console.WriteLine()替换为
Debug.WriteLine();仅在调试模式下运行
Trace.WriteLine();可用于发布程序
2.跟踪点
注意与断点的区别
7.1.2中断模式下的调试
1.进入中断模式
快捷键:F9
7.2错误处理
7.2.1try...catch...finally
try
{
...///包含抛出异常的代码
}
catch
{
...//包含抛出异常时要执行的代码
}
finally
{
...//始终会执行的代码
}
在try块的代码中出现异常后,发生的事件依次是:
-try块在发生异常的地方中断程序的执行。
-如果有catch块,就检查该块是否匹配已抛出的异常类型。如果没有catch块,就执行finally块(如果没有catch块,就一定要有finally块)
-如果有catch块,但已发生的异常类型不匹配,就检查是否有其他的catch块
-如果有cathch块匹配类异常类型,就执行该包含的代码,再执行finally(如果有)
-如果catch块都不匹配,就执行finally
ps:如果try里面没有发生异常,可以不写finally,但是你都写了try,不写finally那何必写try呢?