为什么我不能将例如var myVar =“myvariable”声明为类中的全局变量?有什么办法吗?
答案 0 :(得分:9)
为什么我不能将例如var myVar =“myvariable”声明为类中的全局变量?
因为这就是designers of the C# language决定实施它的方式。
有没有办法做到这一点?。
不,没有。
答案 1 :(得分:3)
从Visual C#3.0开始,在方法中声明的变量 scope可以具有隐式类型var
由于C#规范,它们只是在方法范围内。
答案 2 :(得分:1)
不,var仅适用于本地范围的变量。见this
答案 3 :(得分:0)
var
是一个关键字,通常用于匿名类型。
然后声明字段或全局变量,您必须明确设置字段的实际类型。
var
只能在声明局部变量时使用 在同一声明中初始化;变量无法初始化 null,或方法组或匿名函数。
var
不能用于类范围的字段。使用var声明的变量不能用于 初始化表达式换句话说,这个表达是合法的:
int i = (i = 20)
;但是这个表达式会产生编译时错误:var i = (i = 20)
;无法初始化多个隐式类型变量 同样的陈述。
如果名为var的类型在范围内,则var关键字将解析 到该类型名称,不会被隐含地视为一部分 键入局部变量声明。
答案 4 :(得分:0)
隐式类型只能作为局部变量放在方法范围内。
答案 5 :(得分:0)
我认为你正在寻找一个静态变量。
例如
public class AGlobalVar
{
public static int AVar = 10;
}
您应该能够在应用程序的任何位置访问变量。要访问它,只需去AGlobalVar.AVariable。