以下のコードのようにDictionaryにデータをaddして、addする際に使った変数を初期化してから再利用したいのですが、参照渡しになっているようでDictionaryが消えてしまいます。
値渡しにするにはどうすればいいですか?
//全ての設定を格納する変数 Dictionary<int, Dictionary<string, int>> processList = new Dictionary<int, Dictionary<string, int>>(); //設定を格納する変数 Dictionary<string, int> process = new Dictionary<string, int>(); //1回目 process.Add("1回", 1); process.Add("2回", 2); processList.Add("1回目", process); //初期化 process.Clear(); //2回目 process.Add("1回", 3); process.Add("2回", 4); processList.Add("2回目", process); //初期化 process.Clear();
processListにaddした値1、2、3、4が入っていればいいのですか、最後に初期化しているためかprocessListに値が入っていません。
どうすればいいですか?
processList.Add("1回目", process)は、キーがintなのでコンパイルエラーになりませんか?
回答1件
あなたの回答
tips
プレビュー