我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