obj_set_parent¶
obj_set_parent setzt das Parent-Objekt.
- bool = obj_set_parent(obj, parent)
Returnwert
bool ist TRUE (1), wenn die Funktion erfolgreich war.
Parameter
- obj
obj ist ein mit obj_create erzeugtes Objekt.
- parent
parent ist ein mit obj_create erzeugtes Objekt.
Kommentar
Die obj_set_parent-Funktion kopiert die key-value-Paare von parent nach obj. Beispiel:
o = [. a = 1,
b = 2
];
o1 = [. c = 3,
d = 4
];
o1.set_parent(o);
o1 hat nun die Variablen a, b, c, d. Anstatt set_parent
kann auch folgende
Anweisung geschrieben werden:
o1 = [. __parent__ = o;
c = 3,
d = 4
];
Enthält o Zeiger auf Objekte, wird nur der Zeiger kopiert. Bis zur Version UniPlot R2013.2 wurde eine Kopie des Objekts erzeugt.
Außerdem wird durch die Anweisung set_parent
oder __parent__
eine
Referenz auf das Parent-Objekt in obj gespeichert. obj „erbt“ dadurch alle
Methoden von parent.
Wird dann eine Methode obj.name(1,2)
aufgerufen, wird, falls die Methode
nicht vorhanden ist, die Methode obj.parent.name(1,2)
aufgerufen. Dies wird
rekursiv mit allen parent-Objekten versucht obj.parent.parent.name(1,2)
.
History
Version |
Description |
---|---|
R2013.2 |
Beim Kopieren der Member-Variablen werden bei Objekten nur Referenzen kopiert und nicht die Objekte. Siehe oben. |
4.1.0 |
New. |
Siehe auch
id-1665813