C# 语言规范 - 表达式与基本元素解析

需积分: 45 33 下载量 83 浏览量 更新于2024-08-07 收藏 4.67MB PDF 举报
"C#语言规范第五版的中文版,涵盖了C#编程的基础知识,包括表达式、语句、类与对象、结构、数组、接口、枚举、委托以及特性等核心概念。" 在C#编程语言中,表达式是构建程序的基本单元,它们用于计算值或者执行操作。在C#中,基本表达式构成了更复杂表达式的基础。以下是描述中提到的一些基本表达式类型: 1. **基本表达式(primary-expression)**:这是表达式中最基础的形式,可以由简单名称、字面量、括号包围的表达式、成员访问、调用表达式、元素访问、`this`访问、`base`访问、后置递增和递减操作、对象创建表达式、委托创建表达式、匿名对象创建表达式、`typeof`表达式、检查表达式、非检查表达式、默认值表达式以及匿名方法表达式组成。 2. **字面量(literal)**:字面量是直接表示特定值的符号,如整数123、浮点数3.14、字符串"Hello"或布尔值true。 3. **简单名称(simple-name)**:这是标识符,可以是变量、类型或成员的名称。 4. **括号表达式(parenthesized-expression)**:用括号括起来的表达式,通常用于改变运算符优先级或组合表达式。 5. **成员访问(member-access)**:通过点`.`操作符访问类或结构的成员,如`myObject.myProperty`。 6. **调用表达式(invocation-expression)**:调用方法或属性,如`myMethod()`或`myProperty = value`。 7. **元素访问(element-access)**:访问数组元素或索引器,如`myArray[0]`。 8. **this访问(this-access)**:当前对象的引用。 9. **base访问(base-access)**:访问基类的成员,通常用于重写。 10. **后置递增和递减操作(post-increment-expression, post-decrement-expression)**:如`i++`和`i--`,在表达式求值后改变变量的值。 11. **对象创建表达式(object-creation-expression)**:用于创建新对象,如`new MyClass()`。 12. **委托创建表达式(delegate-creation-expression)**:创建新的委托实例,将方法绑定到委托。 13. **匿名对象创建表达式(anonymous-object-creation-expression)**:创建没有预定义类型的临时对象。 14. **typeof表达式(typeof-expression)**:返回给定类型名的`System.Type`对象。 15. **检查表达式(checked-expression)**:在检查溢出的上下文中执行整数运算。 16. **非检查表达式(unchecked-expression)**:在不检查溢出的上下文中执行整数运算。 17. **默认值表达式(default-value-expression)**:提供类型的默认值。 18. **匿名方法表达式(anonymous-method-expression)**:在没有定义独立方法的情况下定义一个方法体。 C#语言规范第五版详细介绍了这些表达式的语法和用法,以及如何在C#程序中正确地使用它们。除此之外,规范还涵盖了类和对象的细节,如成员的可访问性、类型形参、基类、字段、方法(包括参数、局部变量、静态与实例方法、虚方法、重写方法、抽象方法、方法重载)、其他函数成员(构造函数、属性、索引器、事件、运算符、析构函数),以及结构、数组、接口、枚举、委托和特性等核心概念。这些内容对于理解和编写C#代码至关重要。