C# 语法参考(三 )

C.2.8 结构
struct-declaration:(结构声明:)
attributesopt   struct-modifiersopt   struct   identifier   struct-interfacesopt   struct-body   ;opt(属性可选   结构修饰符可选   struct   标识符   结构接口可选   结构体   ;可选)
struct-modifiers:(结构修饰符:)
struct-modifier(结构修饰符)
struct-modifiers   struct-modifier(结构修饰符   结构修饰符)
struct-modifier:(结构修饰符:)
new
public
protected
internal
private
struct-interfaces:(结构接口:)
:   interface-type-list(:   接口类型列表)
struct-body:(结构体:)
{   struct-member-declarationsopt   }({   结构成员声明可选   })
struct-member-declarations:(结构成员声明:)
struct-member-declaration(结构成员声明)
struct-member-declarations   struct-member-declaration(结构成员声明   结构成员声明)
struct-member-declaration:(结构成员声明:)
constant-declaration(常数声明)
field-declaration(字段声明)
method-declaration(方法声明)
property-declaration(属性声明)
event-declaration(事件声明)
indexer-declaration(索引器声明)
operator-declaration(运算符声明)
constructor-declaration(构造函数声明)
static-constructor-declaration(静态构造函数声明)
type-declaration(类型声明)
C.2.9 数组
array-type:(数组类型:)
non-array-type   rank-specifiers(非数组类型   秩说明符)
non-array-type:(非数组类型:)
type(类型)
rank-specifiers:(秩说明符:)
rank-specifier(秩说明符)
rank-specifiers   rank-specifier(秩说明符   秩说明符)

rank-specifier:(秩说明符:)
[   dim-separatorsopt   ]([   维度分隔符可选   ])
dim-separators:(维度分隔符:)
,
dim-separators   ,(维度分隔符   ,)
array-initializer:(数组初始值设定项:)
{   variable-initializer-listopt   }({   变量初始值设定项列表可选   })
{   variable-initializer-list   ,   }({   变量初始值设定项列表   ,   })
variable-initializer-list:(变量初始值设定项列表:)
variable-initializer(变量初始值设定项)
variable-initializer-list   ,   variable-initializer(变量初始值设定项列表   ,   变量初始值设定项)
variable-initializer:(变量初始值设定项:)
expression(表达式)
array-initializer(数组初始值设定项)
C.2.10 接口
interface-declaration:(接口声明:)
attributesopt   interface-modifiersopt   interface   identifier   interface-baseopt   interface-body   ;opt(属性可选   接口修饰符可选   interface   标识符   接口基可选   接口体   ;可选)
interface-modifiers:(接口修饰符:)
interface-modifier(接口修饰符)
interface-modifiers   interface-modifier(接口修饰符   接口修饰符)
interface-modifier:(接口修饰符:)
new
public
protected
internal
private
interface-base:(接口基:)
:   interface-type-list(:   接口类型列表)
interface-body:(接口体:)
{   interface-member-declarationsopt   }({   接口成员声明可选   })
interface-member-declarations:(接口成员声明:)
interface-member-declaration(接口成员声明)
interface-member-declarations   interface-member-declaration(接口成员声明   接口成员声明)
interface-member-declaration:(接口成员声明:)
interface-method-declaration(接口方法声明)
interface-property-declaration(接口属性声明)
interface-event-declaration(接口事件声明)
interface-indexer-declaration(接口索引器声明)
interface-method-declaration:(接口方法声明:)
attributesopt   newopt   return-type   identifier   (   formal-parameter-listopt   )   ;(属性可选   new可选   返回类型   标识符   (   形参表可选   )   ;)
interface-property-declaration:(接口属性声明:)
attributesopt   newopt   type   identifier   {   interface-accessors   }(属性可选   new可选   类型   标识符   {   接口访问器   })
interface-accessors:(接口访问器:)
attributesopt   get   ;(属性可选   get   ;)
attributesopt   set   ;(属性可选   set   ;)
attributesopt   get   ;   attributesopt   set   ;(属性可选   get   ;   属性可选   set   ;)
attributesopt   set   ;   attributesopt   get   ;(属性可选   set   ;   属性可选   get   ;)
interface-event-declaration:(接口事件声明:)
attributesopt   newopt   event   type   identifier   ;(属性可选   new可选   event   类型   标识符   ;)
interface-indexer-declaration:(接口索引器声明:)
attributesopt   newopt   type   this   [   formal-parameter-list   ]   {   interface-accessors   }(属性可选   new可选   类型   this   [   形参表   ]   {   接口访问器   })
C.2.11 枚举
enum-declaration:(枚举声明:)
attributesopt   enum-modifiersopt   enum   identifier   enum-baseopt   enum-body   ;opt(属性可选   枚举修饰符可选   enum   标识符   枚举基可选   枚举体   ;可选)
enum-base:(枚举基:)
:   integral-type(:   整型)
enum-body:(枚举体:)
{   enum-member-declarationsopt   }({   枚举成员声明可选   })
{   enum-member-declarations   ,   }({   枚举成员声明   ,   })
enum-modifiers:(枚举修饰符:)
enum-modifier(枚举修饰符)
enum-modifiers   enum-modifier(枚举修饰符   枚举修饰符)
enum-modifier:(枚举修饰符:)
new
public
protected
internal
private
enum-member-declarations:(枚举成员声明:)
enum-member-declaration(枚举成员声明)
enum-member-declarations   ,   enum-member-declaration(枚举成员声明   ,   枚举成员声明)
enum-member-declaration:(枚举成员声明:)
attributesopt   identifier(属性可选   标识符)
attributesopt   identifier   =   constant-expression(属性可选   标识符   =   常数表达式)
C.2.12 委托
delegate-declaration:(委托声明:)
attributesopt   delegate-modifiersopt   delegate   return-type   identifier   (   formal-parameter-listopt   )   ;(属性可选   委托修饰符可选   delegate   返回类型   标识符   (   形参表可选   )   ;)
delegate-modifiers:(委托修饰符:)
delegate-modifier(委托修饰符)
delegate-modifiers   delegate-modifier(委托修饰符   委托修饰符)
delegate-modifier:(委托修饰符:)
new
public
protected
internal
private
C.2.13 属性
global-attributes:(全局属性:)
global-attribute-sections(全局属性节)
global-attribute-sections:(全局属性节:)
global-attribute-section(全局属性节)
global-attribute-sections global-attribute-section(全局属性节全局属性节)
global-attribute-section:(全局属性节:)
[   global-attribute-target-specifier   attribute-list   ]([   全局属性目标说明符   属性列表   ])
[   global-attribute-target-specifier   attribute-list   ,]([   全局属性目标说明符   属性列表   ,])
global-attribute-target-specifier:(全局属性目标说明符:)
global-attribute-target   :(全局属性目标   :)
global-attribute-target:(全局属性目标:)
assembly(程序集)
module(模块)
attributes:(属性:)
attribute-sections(属性节)
attribute-sections:(属性节:)
attribute-section(属性节)
attribute-sections   attribute-section(属性节   属性节)
attribute-section:(属性节:)
[   attribute-target-specifieropt   attribute-list   ]([   属性目标说明符可选   属性列表   ])
[   attribute-target-specifieropt   attribute-list   ,   ]([   属性目标说明符可选   属性列表   ,   ])
attribute-target-specifier:(属性目标说明符:)
attribute-target   :(属性目标   :)
attribute-target:(属性目标:)
field(字段)
event(事件)
method(方法)
param(参数)
property(属性)
return(返回)
type(类型)
attribute-list:(属性列表:)
attribute(属性)
attribute-list   ,   attribute(属性列表   ,   属性)
attribute:(属性:)
attribute-name   attribute-argumentsopt(属性名   属性参数可选)
attribute-name:(属性名:)
type-name(类型名)
attribute-arguments:(属性参数:)
(   positional-argument-listopt   )((   定位参数列表可选   ))
(   positional-argument-list   ,   named-argument-list   )((   定位参数列表   ,   命名参数列表   ))
(   named-argument-list   )((   命名参数列表   ))
positional-argument-list:(定位参数列表:)
positional-argument(定位参数)
positional-argument-list   ,   positional-argument(定位参数列表   ,   定位参数)
positional-argument:(定位参数:)
attribute-argument-expression(属性参数表达式)
named-argument-list:(命名参数列表:)
named-argument(命名参数)
named-argument-list   ,   named-argument(命名参数列表   ,   命名参数)
named-argument:(命名参数:)
identifier   =   attribute-argument-expression(标识符   =   属性参数表达式)
attribute-argument-expression:(属性参数表达式:)
expression(表达式)
C.3 不安全代码的语法扩展
class-modifier:(类修饰符:)
...
unsafe
struct-modifier:(结构修饰符:)
...
unsafe
interface-modifier:(接口修饰符:)
...
unsafe
delegate-modifier:(委托修饰符:)
...
unsafe
field-modifier:(字段修饰符:)
...
unsafe
method-modifier:(方法修饰符:)
...
unsafe
property-modifier:(属性修饰符:)
...
unsafe
event-modifier:(事件修饰符:)
...
unsafe
indexer-modifier:(索引器修饰符:)
...
unsafe
operator-modifier:(运算符修饰符:)
...
unsafe
constructor-modifier:(构造函数修饰符:)
...
unsafe
destructor-declaration:(析构函数声明:)
attributesopt   externopt   unsafeopt   ~   identifier   (   )    destructor-body(属性可选   extern可选   unsafe可选   ~   标识符   (   )    析构函数体)
attributesopt   unsafeopt   externopt   ~   identifier   (   )    destructor-body(属性可选   unsafe可选   extern可选   ~   标识符   (   )    析构函数体)
static-constructor-modifiers:(静态构造函数修饰符:)
externopt   unsafeopt   static(extern可选   unsafe可选   静态)
unsafeopt   externopt   static(unsafe可选   extern可选   静态)
externopt   static   unsafeopt(extern可选   静态   unsafe可选)
unsafeopt    static   externopt(unsafe可选    静态   extern可选)
static   externopt   unsafeopt(静态   extern可选   unsafe可选)
static   unsafeopt   externopt(静态   unsafe可选   extern可选)
embedded-statement:(嵌入语句:)
...
unsafe-statement(不安全语句)
unsafe-statement:(不安全语句:)
unsafe   block(unsafe   块)
type:(类型:)
value-type(值类型)
reference-type(引用类型)
pointer-type(指针类型)
pointer-type:(指针类型:)
unmanaged-type   *(非托管类型   *)
void   *(void   *)
unmanaged-type:(非托管类型:)
type(类型)
primary-no-array-creation-expression:(非数组创建基本表达式:)
...
pointer-member-access(指针成员访问)
pointer-element-access(指针元素访问)
sizeof-expression(sizeof 表达式)
unary-expression:(一元表达式:)
...
pointer-indirection-expression(指针间接寻址表达式)
addressof-expression(addressof 表达式)
pointer-indirection-expression:(指针间接寻址表达式:)
*   unary-expression(*   一元表达式)
pointer-member-access:(指针成员访问:)
primary-expression   ->   identifier(基本表达式   ->   标识符)
pointer-element-access:(指针元素访问:)
primary-no-array-creation-expression   [   expression   ](非数组创建基本表达式   [   表达式   ])
addressof-expression:(addressof 表达式:)
&   unary-expression(&   一元表达式)
sizeof-expression:(sizeof 表达式:)
sizeof   (   unmanaged-type   )(sizeof   (   非托管类型   ))
embedded-statement:(嵌入语句:)
...
fixed-statement(固定语句)
fixed-statement:(固定语句:)
fixed   (   pointer-type   fixed-pointer-declarators   )   embedded-statement(fixed   (   指针类型   固定指针声明符   )   嵌入语句)
fixed-pointer-declarators:(固定指针声明符:)
fixed-pointer-declarator(固定指针声明符)
fixed-pointer-declarators   ,   fixed-pointer-declarator(固定指针声明符   ,   固定指针声明符)
fixed-pointer-declarator:(固定指针声明符:)
identifier   =   fixed-pointer-initializer(标识符   =   固定指针初始值设定项)
fixed-pointer-initializer:(固定指针初始值设定项:)
&   variable-reference(&   变量引用)
expression(表达式)
variable-initializer:(变量初始值设定项:)
expression(表达式)
array-initializer(数组初始值设置项)
stackalloc-initializer(stackalloc 初始值设置项)
stackalloc-initializer:(stackalloc 初始值设定项:)
stackalloc   unmanaged-type   [   expression   ](stackalloc   非托管类型   [   表达式   ])
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值