C# 7.0 核心技术指南 (36):C#语言基础 2.7.4&2.8

阅读数:9 2019 年 11 月 30 日 23:44

C# 7.0核心技术指南(36):C#语言基础 2.7.4&2.8

(边界检查)

内容简介
本书前三章将集中介绍 C#语言。首先介绍基本的语法、类型和变量。而后会介绍一些高级的特性,如不安全代码以及预处理指令。如果你是 C#语言的初学者,请循序渐进地阅读这些章节。
其余各章则涵盖了.NET Framework 的核心功能,包括 LINQ、XML、集合、并发、I/O 和网络、内存管理、反射、动态编程、特性、安全、应用程序域和原生互操作性等主题。第 6 章和第 7 章是后续主题的基础,除这两章之外,其余各章可以按照需要以任何顺序阅读。LINQ 相关的三个章节好按顺序阅读。其中的一些章节需要一些并发相关的知识,这些知识将在第 14 章中介绍。

运行时会为所有数组的索引操作进行边界检查。如果是用了不合法的索引值,就会抛出 IndexOutOfRangeException 异常。

复制代码
int[] arr = new int[3];
arr[3] = 1; // IndexOutOfRangeException thrown

与 Java 一样,数组边界检查对类型安全和调试简化都是非常必要的。

通常,边界检查的性能开销很小,且 JIT(即时编译器)也会对其进行优化。例如,在进入循环之前预先确保所有的索引操作的安全性来避免每次循环中都进行检查。另外 C#还提供了 unsafe 代码来显式绕过边界检查(请参见 4.15 节)。


(变量和参数)

变量表示存储着可变值的存储位置。变量可以是局部变量、参数(value、ref 或 out),字段(实例或静态)以及数组元素。

C# 7.0核心技术指南(36):C#语言基础 2.7.4&2.8

购书地址 https://item.jd.com/12681788.html?dist=jd

评论

发布