4
這是我的代碼現在。但我想將這些「添加」從構造函數中移出。當我們new
時,我們可以初始化Dictionary
嗎?或者你有另一個更好的主意。基本上我想定義幾個在很多地方使用的字符。順便說C#,我可以從構造函數中移出字典初始代碼嗎?
public static Dictionary<actionEnum, String> loginAction = new Dictionary<actionEnum, string> {
{ actionEnum.In, "I" },
{ actionEnum.Out, "O" },
{ actionEnum.Fail, "F" }
};
注意的是,字典是可變的;:
public class User
{
public enum actionEnum
{
In,
Out,
Fail
}
public static Dictionary<actionEnum, String> loginAction = new Dictionary<actionEnum, string>();
public User()
{
loginAction.Add(actionEnum.In, "I");
loginAction.Add(actionEnum.Out, "O");
loginAction.Add(actionEnum.Fail, "F");
}
.....
}
沒有意識到他們有多參數語法。尼斯。 – micahtan 2010-05-11 16:05:13
不僅字典本身是可變的,而且在你和他的代碼中,引用也是可變的。要修復後者,請將其標記爲「只讀」。爲了修復前者,好吧,一些人已經推出了他們自己的ReadOnlyDictionary,比如這裏:http://www.cuttingedge.it/blogs/steven/pivot/entry.php?id=29 – 2010-05-11 19:12:17