Ist es möglich, ein array innerhalb eines Dictionary-Objekts
Wusste ich, dass die Kombination zu ähnlichen Datenstrukturen würde nicht logisch sein, aber neugierig, zu wissen, wenn wir ein array-element im Dictionary-Objekt. einige Sache wie:
Set d = CreateObject("Scripting.Dictionary")
d.Add "Name", "John"
d.Add "Age", 31
d.Add "Company", Array("microsoft", "apple")
InformationsquelleAutor user1925406 | 2013-02-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie eine
WScript.Echo
Weg von der Lösung der Frage für sich selbst:cf diese Frage
Update (Dank @Ansgar):
Elemente geliefert, die von
.Item()
(undFor Each
) sind Kopien; und Array-Zuweisung kopiert (nicht eine Referenz wie in anderen Sprachen). So ändern Sie ein array-element in einem Wörterbuch gespeichert, bedeutet die Zuweisung ein neues array:Manchmal ist es einfacher, ein(anderes) Wörterbuch, ein System.Sammlungen.Arraylist, oder ein benutzerdefiniertes Objekt (alle Objekte, die Referenzen sind, so dass eine Zuordnung ermöglicht den Zugriff auf die original-element).
d("Company")(1) = "Oracle"
wird nicht funktionieren). Ordnen Sie das array an eine variable, ändern Sie es, dann weisen Sie es zurück zu den Wörterbuch-Eintrag.Und während Sie können die Zuordnung von Objekten als Schlüssel, es ist nicht möglich, weisen Sie ein array als Schlüssel:
a = array(1,2,3) : d(a) = "array!"
Ergebnisse in einemInvalid procedure call or argument
Fehler. (EDIT: oh, ich sehe gerade, Ekkehard.Horner erklärt, dies in der Antwort, dass ist unter dem link in dieser Antwort).InformationsquelleAutor Ekkehard.Horner