这种处理的有效性主要取决于所选择的语言和平台,因此,详细了解它们的正确用法和行为非常重要,这样我们的用户和其他开发人员在诊断代码中的问题时免受痛苦。
在本文中,我们将了解C和.NET在错误处理方面的作用。

词汇表


CLR:公共语言运行时的缩写,是.NET运行时,它负责执行用所有.NET语言编译的应用程序。除了虚拟机和实时编译器之外,它还具有额外的职责,如内存管理、安全性等。

BCL:Base Class Library的缩写,是.NET framework的核心库。除了直接使用CLR操作之外,它还公开了原始数据类型和构建和运行应用程序的基本功能。也称为mscorlib。

FCL:Framework类库的缩写,是我们大多数人在.NET中所知道的“框架”。使用BCL作为构建块,它公开了大量具有各种特性的名称空间,比如系统IO, 系统安全, 系统文本,等等。

TPL:Task Parallel Library的缩写,是一个包含由异步关键字和API提供的功能的库。它是随着.NET版本4.5和C#5一起发布的。

SEH:Structured Exception Handling的缩写,是Windows的原生异常子系统,它在操作系统级别处理软件和硬件异常

MDA:托管调试助手的缩写。这些是特殊的调试扩展,向VisualStudio调试器提供与CLR执行状态相关的信息,后者由内部助手和资产公开。

重新审查异常

在.NET中,尤其是在C#中,异常是使用try、catch和finally块来处理的。首先,try块将包含预期引发异常的代码,其次是catch块,它将指定异常类型和在try块内引发与指定类型匹配的异常时将执行的代码块:

Random rnd = newRandom();try{
Console.WriteLine(
1 / rnd.Next(-100, 101));
}
catch(DivideByZeroException ex) {
Debug.WriteLine(“A division by zero attempt has occurred”);
}

标签: none

添加新评论