|
|
Unterschied Value und Handle Klasse? |
|
Perilun |

Forum-Anfänger
|
 |
Beiträge: 32
|
 |
|
 |
Anmeldedatum: 26.03.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.07.2018, 16:28
Titel: Unterschied Value und Handle Klasse?
|
 |
Kann jemand bitte erklären welche Unterschiede zwischen den beiden Klassen sind und wann welche Art der Klassen benutzt werden soll/muss?
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.497
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 02.07.2018, 16:53
Titel:
|
 |
Hallo,
die Doku kann das ;)
https://www.mathworks.com/help/matl.....le-and-value-classes.html und https://www.mathworks.com/help/matl.....kind-of-class-to-use.html
Kurzzusammenfassung:
* Objekte von Value-Klassen haben call-by-value - Verhalten, wie beispielsweise Double-Arrays, d.h. die Methoden arbeiten (gefühlt) auf einer Kopie des Objekts. Das Objekt muss also in der Deklaration und beim Aufruf zurückgegeben werden.
* Objekte von Handle-Klassen haben call-by-reference - Verhalten, wie beispielsweise Graphikobjekte in MATLAB oder Variablen in C oder Java, d.h. die Methoden arbeiten direkt auf dem Objekt. Das Objekt braucht also in der Deklaration und beim Aufruf nicht zurückgegeben werden, weil man direkt darauf arbeitet.
Grüße,
Harald
|
|
|
Perilun |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 32
|
 |
|
 |
Anmeldedatum: 26.03.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.07.2018, 19:55
Titel:
|
 |
Danke für die Antwort. Gibt es welche Bereiche oder Einsatzgebiete, wo sich die value oder wo die handle Klasse sich jeweils besser eignen?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.497
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 02.07.2018, 20:06
Titel:
|
 |
Hallo,
Zitat: |
Gibt es welche Bereiche oder Einsatzgebiete, wo sich die value oder wo die handle Klasse sich jeweils besser eignen? |
Bitte den zweiten Link ansehen. Dort ist das ausführlich beschrieben.
Ich würde es mal umgekehrt sagen: wenn du beschreibst, was bei dir eine Klasse sein soll und wie mit den Objekten interagiert werden soll, dann kann man dir sagen, ob eine Value-Klasse oder eine Handle-Klasse geeigneter ist.
Grüße,
Harald
|
|
|
Perilun |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 32
|
 |
|
 |
Anmeldedatum: 26.03.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.07.2018, 21:24
Titel:
|
 |
Ich mache ein Beispiel:
Die Klasse soll ein Auto sein, welche als Eigenschaften seine Geschwindigkeit, Beschleunigung, usw. hat.
Bei bestimmten vorgängen sollen Autos, welche entweder vor diesem Auto oder hinter ihm fahren hinzugeschaltet werden. Diese Autos sind andere Objekte. Das Auto soll sich entsprechend dem ihm mitgeteiltem Status, Entfernung, die Geschwindigkeit der anderen Autos, usw. verhalten, sprich abbremsen, abbiegen oder etwas anderes.
Welche Klasse sollen jeweils die Autos jetzt haben?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.497
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 03.07.2018, 08:48
Titel:
|
 |
Hallo,
basierend auf dem Link würde ich zu Handle tendieren.
Dort hast du insbesondere die Möglichkeit, über Listener und Events direkt auf Zustandsänderungen bei Vorderleuten zu reagieren.
Das vorausfahrende Fahrzeug würde ich als Eigenschaft im Auto abspeichern.
Momentan sieht es aus wie ein Array von Auto-Objekten. Es kann sinnvoller sein, ein Objekt Fahrzeugkolonne zu haben, in dem die Eigenschaften jeweils Arrays mit den Informationen für die einzelnen Autos sind.
Grüße,
Harald
|
|
|
|
|
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 - 2025
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.
|
|