|
|
Interaktion zwischen Objekten |
|
Dschiehses |
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 12.01.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.03.2014, 19:43
Titel: Interaktion zwischen Objekten
|
|
|
|
|
Hallo zusammen,
ich habe eine Frage bezüglich der Abhängigkeiten von Objekten untereinander.
Folgendes Szenario: Ich habe ein "Mutter-Objekt" (KEINE superclass mit Vererbung) mit Namen sim.Run, was Daten einer Simulation speichert. Die einzelnen Komponenten der Simulation sind wiederum Objekte, die in einem Cell-Array im Mutterobjekt gespeichert sind. Beispielhaft folgender Code:
Jetzt möchte ich, dass beispielsweise das components.Objekt1 Objekt einen Wert aus dem param Struct des sim.Run-Objekts liest.
Die components-Objekte sind alles handle bzw. matlab.mixin.copyable Objekte.
Ist es sinnvoll, bei der Instanziierung der components-Objekte als Eingabeparameter das "Mutterobjekt" sim.Run mitzugeben? Also beispielsweise:
Da alles handle-Objekte sind, sollte ja nur die Referenz übergeben werden. Allerdings ergibt das dann eine "Endlosschleife" aus Referenzen. Run enthält Objekt1, was wiederum auf Run verweist, usw.
Ist diese Methode sinnvoll, oder gibt es eine bessere?
Eine weitere Frage, die losgelöst hiervon ist (wofür ich aber kein neues Thema eröffnen möchte):
Ich nutze eine komplett OOP-basierende GUI, also ohne GUIDE. Irgendwo habe ich aufgeschnappt (wenn ich mich recht erinnere im Matlab FileExchange), dass Callback-Funktionen nicht als normale Objekt-Methoden erstellt werden sollen, da das zu einem Memory Leak führen soll. Stattdessen sollte man Callbacks entweder static deklarieren oder als "Helper-Funktion" nach der Klassendefinition aufführen.
Was ist dort die beste Methode?
Vielen Dank,
Jan
|
|
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|