Ich habe ein Wörterbuch, mit dem ich ein anderes Wörterbuch unter Verwendung des Namens eines Parameters speichern kann.Speichern eines Wörterbuchs in einem Wörterbuch in Erlang
Ich bekomme einen Mismatch-Fehler auf der rechten Seite.
hier ist mein Code
handle_cast({setState, Id}, State) ->
Id0 = dict:new(),
DQueue = queue:new(),
UQueue = queue:new(),
Id1 = dict:store(dQueue, [DQueue], Id0),
Id2 = dict:store(uQueue, [UQueue], Id1),
Id3 = dict:store(dSpeed, [], Id2),
Id4 = dict:store(uSpeed, [], Id3),
D = dict:store(Id, [Id4], State),
State = D,
{noreply, State};
Ich bin nicht sicher, wo der Fehler herkommt. Ich dachte, es könnte sein, weil ich Id als Schlüssel im Hauptwörterbuch mit dem neuen internen Wörterbuch als Wert ablege.
Ich brauche den Namen des internen Wörterbuchs, um den Wert der ID zu sein, da es viele von ihnen geben wird und ich später auf sie per Id zugreifen muss.
Richte ich das Wörterbuch richtig ein? Erlaubt erlang Wörterbücher, Wörterbücher zu halten?
Dank
Danke. Ich habe ein paar Dinge geändert. Sein Teil eines Uni-Projekts: P Ich werde diese jetzt editieren. Also sollte ich es z. NewState = D. {noreply, NewState}. ? ;) – jarryd
entweder das oder nur '{noreply, D}' –
Wie wirken diese Speicher? Erstellen eines neuen Diktats beim Speichern, Übergeben des alten Diktats? Oder überschreibt es es sofort? – jarryd