これは.NET規則に反していることは知っていますが、時にはそれが必要な場合もあります。たとえば、私はDictionary<string, bool>
を実行する必要があります。この辞書は、解析された論理式に自分の変数を格納します。私は真理値表を出力したいので、私は反復して要素を設定する必要があります。私が試したFor Eachループの値を変更する - どのような方法ですか?
ことの一つは、
foreach (var x in Variables.Keys)
{
bool on = ((in) & (j << in)) > 0;
Variables[x] = on;
builder.Append(on == true ? '1' : '0').Append('\t');
j++;
}
である私はちょうどInvalidOperationException
を得る:コレクションが変更されました。列挙操作が実行されないことがあります。辞書を配列に変換してそのように修正しようとしましたが、KeyValuePair.Value
はです。readonlyなので、うまくいきません。
forループを使用します。 – jrummell
^実際には答えが必要です。 –