![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=1738923992-ZT2bDJmtghYiI2Hq012ByQ15OSbOIkyK-0-0905acbe7156f26fad637fb622aac7cf)
2.2.1 标识符和关键字
标识符是程序员为类、方法、变量等选择的名字。下面按顺序列出了上述示例中的标识符:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-02.jpg?sign=1738923992-MxL3GvNK3THLFgKwz1eraZpvsJzSgsPe-0-52ac1febac9541d587da16059eb8a3ef)
标识符必须是一个完整的词,它由以字母和下划线开头的Unicode字符构成。C#标识符是区分大小写的,通常约定参数、局部变量以及私有字段应该以小写字母开头(例如myVariable),而其他类型的标识符则应该以大写字母开头(例如MyMethod)。
关键字是对编译器有特殊意义的名字。前面的示例中用到的两个关键字是using和int。
大部分关键字是保留字,这意味着它们不能用作标识符。以下列出了C#的所有关键字:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-03.jpg?sign=1738923992-fBy6F9SIu4sdCG9JbkspIJ9bTHQiuOfM-0-de91ee53f4a5f83128a807939adbaa65)
如果希望用关键字作为标识符,需在关键字前面加上@前缀,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-04.jpg?sign=1738923992-9kULRGY7cXOQLOLoLMgZHPqVWkOPv7zW-0-4515983fee3513a91566dca41e306718)
@并不是标识符的一部分,所以@myVariable和myVariable是一样的。
上下文关键字
一些关键字是上下文相关的,它们有时不用添加@前缀也可以用作标识符,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-05.jpg?sign=1738923992-uoYYEVqtgmAse2WPIbycvqEiU3TKqwaW-0-a45cd6af033483030868c005206634c0)
使用上下文关键字作为标识符时,应避免与上下文中的关键字混淆。
2.2.2 字面量、标点与运算符
字面量在语法上是嵌入程序中的原始数据片段。上述示例中用到的字面量有12和30。
标点有助于划分程序结构,例如,分号用于结束一条语句。语句也可以放在多行中:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-01.jpg?sign=1738923992-eBiYUTBlzgCfr9eslFY2gg7iaXatxUwB-0-60e2d25c768a2ad220fec151b68436d6)
运算符用于改变和组合表达式。大多数C#运算符都以符号表示,例如,乘法运算符*。我们将在本章后续内容中详细介绍运算符。在前文中出现的运算符有:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-02.jpg?sign=1738923992-fPCNzuy6W2hzPyVKxCKKYxui4bW08scb-0-50f7a0d6cd53b8c54f3acc75c8380815)
点号.表示某个对象的成员(或者数字字面量的小数点)。括号在声明或调用方法时使用,空括号在方法没有参数时使用,本章后续还会介绍括号的其他用途。等号=用于赋值操作,双等号==用于相等比较,请参见本章后续内容。
2.2.3 注释
C#提供了两种不同形式的源代码文档:单行注释和多行注释。单行注释由双斜线开始,到本行结束为止,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-03.jpg?sign=1738923992-IqMVyaYwyPHKQlWUJgcOyjKQ2OWWHnhz-0-c0c8aac75cbe013e67e76f10b15a79e9)
多行注释由/*开始,由*/结束,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-04.jpg?sign=1738923992-yH0LOi5QALLiAl3z67jv86oSVZ0m9DVB-0-ca98b21b8784c6ff87515a12b09affee)
注释也可以嵌入XML文档标签中,我们将在4.20节中介绍。