1.2C#语言的标识符(Identifier)和关键字(Keyword)

1.标识符

标识符必须以字母(A~Za~z)或 下划线(_)开头,后续可以是任何字母(A~Za~z)、数字(0~9)或 下划线(_)。标识符区分大小写。

2.命名约定

标识符不应包含两个连续的__字符。这些名称是为编译器生成的标识符保留的。

命名空间:PascalCase.
项目名称:同命名空间。
枚举:PascalCase,无[Flags]特性用单数,有[Flags]特性用复数.
结构:PascalCase.
元组:camelCase.
类:PascalCase.
记录:PascalCase.
记录的参数(即记录的public属性):PascalCase.
接口:大写字母I + PascalCase.
委托:PascalCase.
变量:camelCase.
常量:const关键字 + 类型 + PascalCase.
枚举内常量:PascalCase.
public字段:PascalCase.
private或internal字段:单下划线_camelCase.
static private或internal字段:s_camelCase.
static private或internal线程字段:t_camelCase.
方法:PascalCase.
异步方法:PascalCase + Async.
属性:PascalCase.
索引器:this.
事件:PascalCase,即将发生的事件(现在进行时),已经发生的事件(过去式).
运算符:operator.
构造函数:PascalCase.
终结器:波浪号~PascalCase.
方法参数:camelCase.
类型参数:大写字母T + PascalCase.
特性:PascalCase + Attribute.
指针:referent类型* 指针变量.

3.关键字

关键字 是对编译器有特殊意义的预定义的保留标识符,除非以 @ 字符开头,否则不能用作标识符。

通用关键字是C#程序的任何部分保留的标识符,上下文关键字是仅在C#一部分程序上下文中有特殊含义,可以在相应上下文范围之外用作标识符。

通用关键字
    : 'abstract' | 'as'       | 'base'       | 'bool'      | 'break'
    | 'byte'     | 'case'     | 'catch'      | 'char'      | 'checked'
    | 'class'    | 'const'    | 'continue'   | 'decimal'   | 'default'
    | 'delegate' | 'do'       | 'double'     | 'else'      | 'enum'
    | 'event'    | 'explicit' | 'extern'     | 'false'     | 'finally'
    | 'fixed'    | 'float'    | 'for'        | 'foreach'   | 'goto'
    | 'if'       | 'implicit' | 'in'         | 'int'       | 'interface'
    | 'internal' | 'is'       | 'lock'       | 'long'      | 'namespace'
    | 'new'      | 'null'     | 'object'     | 'operator'  | 'out'
    | 'override' | 'params'   | 'private'    | 'protected' | 'public'
    | 'readonly' | 'ref'      | 'return'     | 'sbyte'     | 'sealed'
    | 'short'    | 'sizeof'   | 'stackalloc' | 'static'    | 'string'
    | 'struct'   | 'switch'   | 'this'       | 'throw'     | 'true'
    | 'try'      | 'typeof'   | 'uint'       | 'ulong'     | 'unchecked'
    | 'unsafe'   | 'ushort'   | 'using'      | 'virtual'   | 'void'
    | 'volatile' | 'while'
    ;
上下文关键字
    : 'add'      | 'and'      | 'alias'      | 'ascending' | 'args async'
    | 'await'    | 'by'       | 'descending' | 'dynamic'   | 'equals'
    | 'from'     | 'get'      | 'global'     | 'group'     | 'init'
    | 'into'     | 'join'     | 'let'        | 'managed'   | 'nameof'
    | 'nint'     | 'not'      | 'notnull'    | 'nuint'     | 'on'
    | 'or'       | 'orderby'  | 'partial'    | 'record'    | 'remove'
    | 'select'   | 'set'      | 'unmanaged'  | 'value'     | 'var'   
    | 'when'     | 'where'    | 'with'       | 'yield'     ;

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/csharp/csharplang/7861.html

(0)
上一篇 2021年1月2日 02:22
下一篇 2021年1月3日 01:50

相关推荐

  • 3.14C#类型之指针(Pointer)

    1.指针类型声明 类型为referent类型*的指针变量存储的是类型为referent类型的固定变量或可移动变量的地址。只有非托管类型可为referent类型。 任何指针类型可以分配 null。 2.继承 指针类型没有从 System.Object 继承。 3.类型转换 指针类型与 Sys…

    C#语言教程 2021年3月14日
    06920
  • 5.1C#异步编程运行机制

    C#语言的异步编程是基于任务的异步编程(Task Asynchronous Programming,简写TAP)模型,该模型的核心是 Task 和 Task<T> 对象以及 async 和 await 关键字。 1.异步方法声明…

    C#语言教程 2021年5月1日
    05130
  • 1.3C#语言的运算符(Operator)和表达式(Expression)

    1.一元运算符 运算符 描述 +x 一元 + 运算符返回其操作数的值。 -x 一元 – 运算符对其操作数的数值取负。 ++x ++x 的结果是按 1 递增其操作数后的 x 的值。 –x –x 的结果是按 1 递减其操作数后的 …

    C#语言教程 2021年1月3日
    08230

发表回复

登录后才能评论