在一次的設計中,程式一直出錯,追到源頭是因為我迴圈的變數(參考型別)沒有初始化,跑迴圈時有可能執行到上一圈的值,後來我寫了一直小程式來測果然是這樣,不經一事不長一智,現在我迴圈一定會加上初始值又是null,養成習慣免得以後又出錯。
這是測試的範例
第一次執行時看起來很正常
但在第二次執行時,還沒有執行設定,就有值了
甚至連宣告都沒有時就有值了
因為C#沒法看記憶體的位址,不過我猜想該應是變數都指向都一個記憶體位址照成的。
養成好習慣加上初始值
String Que = null;
這是測試的範例
class Program
{
static void Main(string[] args)
{
for (int i = 0; i < 5; i++)
{
Que = "Question";
}
}
}
{
static void Main(string[] args)
{
for (int i = 0; i < 5; i++)
{
Que = "Question";
}
}
}
第一次執行時看起來很正常
但在第二次執行時,還沒有執行設定,就有值了
甚至連宣告都沒有時就有值了
因為C#沒法看記憶體的位址,不過我猜想該應是變數都指向都一個記憶體位址照成的。
養成好習慣加上初始值
String Que = null;