我aproblem静态变量声明在C#中的顺序静态变量为了
当我运行这段代码:
static class Program {
private static int v1 = 15;
private static int v2 = v1;
static void Main(string[] args) {
Console.WriteLine("v2 = "+v2);
}
}
输出是:
v2=15
但是,当我改变静态变量声明的命令如下:
static class Program {
private static int v2 = v1;
private static int v1 = 15;
static void Main(string[] args) {
Console.WriteLine("v2 = "+v2);
}
}
输出结果为:
v2 = 0
为什么会发生这种情况?
这不是声明式编程,就像在Prolog中一样。在C#命令中有一个命令它们运行。在这种情况下,它是直接的... – ppeterka 2013-03-13 14:58:46
你知道吗,如果你定义v1如:'private const int v1 = 15;'你得到15而不是0? – 2013-03-13 15:06:30