![C# 10核心技术指南](https://wfqqreader-1252317822.image.myqcloud.com/cover/89/52513089/b_52513089.jpg)
2.2 语法
C#的语法基于C和C++语法。在本节中,我们将使用下面的程序介绍C#的语法元素:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-01.jpg?sign=1739253902-HIDGg7suGVI0rvfbBpIWzVHV9vCfkQTI-0-aa30f016aef0d27985986a2e4ba88bbf)
2.2.1 标识符和关键字
标识符是程序员为类、方法、变量等选择的名字。下面按顺序列出了上述示例中的标识符:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-02.jpg?sign=1739253902-g2MAaB0Dn4owSvcDVZCRq6Yea2EGZnwJ-0-f467b14897525bbe6c7377b77344e9d7)
标识符必须是一个完整的词,它由以字母和下划线开头的Unicode字符构成。C#标识符是区分大小写的,通常约定参数、局部变量以及私有字段应该以小写字母开头(例如myVariable),而其他类型的标识符则应该以大写字母开头(例如MyMethod)。
关键字是对编译器有特殊意义的名字。前面的示例中用到的两个关键字是using和int。
大部分关键字是保留字,这意味着它们不能用作标识符。以下列出了C#的所有关键字:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-03.jpg?sign=1739253902-765pe0I0pZUV58cUjs42iiQEjhYOdlTJ-0-5047e48838c6565181b12b362899e671)
如果希望用关键字作为标识符,需在关键字前面加上@前缀,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-04.jpg?sign=1739253902-lLn3eklaol9PZcymPgVxovVWVbvOL6dz-0-39933b105b9baf5049f03eeed3d96ffc)
@并不是标识符的一部分,所以@myVariable和myVariable是一样的。
上下文关键字
一些关键字是上下文相关的,它们有时不用添加@前缀也可以用作标识符,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-05.jpg?sign=1739253902-ULlCsgjNJHJHQl3aGbaYYWyJHoGkUhRS-0-ff8d623534660bf63a0698178ca00290)
使用上下文关键字作为标识符时,应避免与上下文中的关键字混淆。
2.2.2 字面量、标点与运算符
字面量在语法上是嵌入程序中的原始数据片段。上述示例中用到的字面量有12和30。
标点有助于划分程序结构,例如,分号用于结束一条语句。语句也可以放在多行中:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-01.jpg?sign=1739253902-MGS8HECIhhIdrj99KZkHaQMBBgJ102tk-0-0b105ffec3d7b120e6ad5e850f6eba91)
运算符用于改变和组合表达式。大多数C#运算符都以符号表示,例如,乘法运算符*。我们将在本章后续内容中详细介绍运算符。在前文中出现的运算符有:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-02.jpg?sign=1739253902-yWiKXjmnQePMLqnttJ8YFOvS313zF48C-0-9a46b7f781d1ea713b1cc79f2ce1233d)
点号.表示某个对象的成员(或者数字字面量的小数点)。括号在声明或调用方法时使用,空括号在方法没有参数时使用,本章后续还会介绍括号的其他用途。等号=用于赋值操作,双等号==用于相等比较,请参见本章后续内容。
2.2.3 注释
C#提供了两种不同形式的源代码文档:单行注释和多行注释。单行注释由双斜线开始,到本行结束为止,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-03.jpg?sign=1739253902-gf9Mqtlcrw5qC7yu3ko7FSWLrMDxDuaH-0-8de15e50bf0dbf07c331defc75220fd8)
多行注释由/*开始,由*/结束,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-04.jpg?sign=1739253902-2cnGmallXV1VcPu0VcYvhWUyZkrkAChI-0-b98e7fad9c502ab212658b08234b60c5)
注释也可以嵌入XML文档标签中,我们将在4.20节中介绍。