我想知道是否有一个标准来设置C#中的函数修饰符的顺序。即。
public static void Method()
{}
static public void Method()
{}
这两个都很好,但是
当我编码:
public void static Method()
{}
我收到以下错误:
成员修饰符'static'必须先于 会员类型和名称
和
方法必须具有返回类型
答案 0 :(得分:10)
方法声明必须始终遵循以下模式:
[modifiers] returnType methodName([parameters])
没有关于修饰符顺序的规则,但它们必须始终位于返回类型之前。
我不认为有任何标准订单,人们只是随心所欲......我个人更喜欢先放入访问修饰符(public
,private
等),然后是static
修饰符(如果有),然后是virtual
,abstract
或override
修饰符(如果适用)。
有关详细信息,请参阅C#规范(第10.6节)
答案 1 :(得分:5)
问题是void
不是修饰符 - 它是返回类型。所有修饰符都必须在返回类型之前。
我很确定 是一个用于排序真正修饰符的约定,但我不知道它在哪里记录。
我总是先写下辅助功能(公共等)。
答案 2 :(得分:1)
方法修饰符没有特定的顺序。
以下是C#标准规范的正式语法......
使用方法声明声明方法:
方法声明:
method-header method-body
方式报头:强>
属性 opt 方法修饰符选择部分选择 返回类型 成员名称类型-parameter列表选择
(formal-parameter-list opt )type-parameter-constraints-clauses opt
****方法改性剂:****
新
公共
保护
内部
私人
静态
虚拟
密封
覆盖
抽象
EXTERN
的返回型:强>
键入
无效
的构件名:强>
标识
接口类型。标识符