Wie wird richtig mit Referenzargumenten umgegangen?
Habe folgende Situation sehr oft: 1. Erzeugung einer lokalen Variablen in einer Memberfkt meiner Klassen 2. Aufruf einer API oder LIB Fkt mir einer Referenz auf diese Variable
Nun sitz bei mir im Kopf genau dieser Knoten: Mit dem Verlassen meiner Funktion wird die Variable ungültig. Was ist, wenn im irgendjemand/-etwas mit der Referenz weiterarbeitet? Wie kann ich mir da sicher sein was wirklich passiert ohne jedesmal im Quelltext der verwedeten Klassenbibliothek nachzuschlagen?
Wenn deine Funktion verlassen wurde ist die von dir aufgerufene Funktion doch auch schon Geschichte (mal angenommen da wurde kein Prozess im Hintergrund gestartet der versucht da irgendwo im speicher rumzumüllen...) -- ...fleißig wie zwei Weißbrote
Was ist, wenn im irgendjemand/-etwas mit der Referenz weiterarbeitet?
Wenn du eine Varible einer Funktion als Referenz übergibts, und diese einer anderen Funktion, muss doch die erste Funktion warten bis die 2 fertig ist, bevor sie weiter machen kann und damit ist doch alles okay. Beim forken würde die Varible kopiert.
Zitat von marschi:
Wie kann ich mir da sicher sein was wirklich passiert ohne jedesmal im Quelltext der verwedeten Klassenbibliothek nachzuschlagen?