-3
所以局部變量,我有了一個Dictionary<string,System.Timers.Timer>
稱爲「計時器」一類的,我在訪問了「定時器」字段的類中的方法:我可以聲明直接修改類字段
public static void Save(FastColoredTextBox editor) //this works fine
{
timers[(string)editor.Tag].Dispose();
timers[(string)editor.Tag] = new Timer(Timeout*1000) { AutoReset = false };
timers[(string)editor.Tag].Elapsed += TimerElapsed;
timers[(string)editor.Tag].Start();
}
正如你所看到的,我用timers[(string)editor.Tag]
,因爲當我設置這樣的變量:
public static void Save(FastColoredTextBox editor) //doesn't modify the Dictionary
{
var timer = timers[(string) editor.Tag];
timer.Dispose();
timer = new Timer(Timeout*1000) { AutoReset = false };
timer.Elapsed += TimerElapsed;
timer.Start();
}
「計時器」 是德作爲局部變量分類,並且不修改Dictionary
。
那我能不能設置像將修改類字段Dictionary
第二個例子中的「計時器」局部變量,否則我將在第一個例子中使用直接訪問方式是怎樣的?
C#沒有全局變量。你可以有一個靜態字段,但它需要成爲某種類型的一部分。 – mason
看看屬性或自動屬性...也做谷歌搜索和閱讀'範圍'並瞭解哪些優先 – MethodMan