2017-01-12 4 views
-3

Wie initialisiert man ein Array von Container-Maps in Matlab? Gibt es dafür eine Struktur?Wie initialisiert man ein Array von Container-Maps in Matlab?

Ich brauche etwas wie refMap (1) bis refMap (n). Jeder ein einzigartiges Wörterbuch.

Ich beabsichtige, es zu verwenden, um eine globale Referenz auf eine lokale Referenz zu übersetzen. Ich arbeite mit einer Art von parallelem Programmiercode. Ich kann also nicht einfach alle meine Informationen auf derselben Karte platzieren. Ich werde mit einer Struktur enden, so langsam wie es nur geht.

+2

Nr erstellen Warum greifen Sie ein Array von 'container.Map' Objekte brauchen? Warum nicht einfach alles in eine "container.Map" stecken, da es ... ein Container ist. – Suever

+0

Das wäre nicht möglich. Ich beabsichtige, einen globalen Verweis auf eine lokale Referenz zu übersetzen. Ich arbeite mit einer Art von parallelem Programmiercode. Ich werde mit einer Struktur enden, so langsam wie es nur geht. –

+0

Ich muss mehrere Karten halten, auf die zugegriffen werden muss, z. B. map {3} map (4) oder auf ähnliche Weise –

Antwort

1

ich nur empfehlen, sie innerhalb eines Zellenfeldes zu speichern und dann Sie können eine kleine anonyme Funktion schreiben, um alle von ihnen zu erstellen

Und es dann N containers.Map` Objekte

containers = create_containers(4); 
1

Ich bin mir nicht sicher, ob Sie ein Array verwenden können. Ich würde die verschiedenen Containerkarten in Zellen einfügen.

mapObj_1 = containers.Map(Set_11, Set_12); 
cellObjs = {mapObj_1, mapObj_2, ...} 
0

Ich habe einen indirekten Weg gefunden, dies zu tun. Ich kann eine Klasse definieren, die ein Container mappt, ist eine Eigenschaft davon. Anstatt also ein Array von Container-Maps zu initialisieren, initialisiere ich einfach ein Array von Objekten mit Containern darin.

Dies legt eine Klasse von dict fest, in der sich eine Container-Map befindet. Diese

classdef dict  
    properties 
     trans = containers.Map   
    end 
    methods 
    end   
end 

4 Objekte initialisieren

for ii = 1:4 
    op(ii) = dict(); 
end 

Jetzt können Sie sie verwenden einfach durch Aufruf op (ii) .trans

Verwandte Themen