Von |
Whiti |
Am |
08. Juli 2008 um 14:19:28 |
Frage |
Hallo,
ich habe ein seltsames Problem mit Call By Reference, dieses Problem habe ich nun schon des öfteren entdeckt und jetzt will ich wissen wieso !?Function CleanUpArr(ByRef MeinArray) Dim i As Integer For i = 0 To UBound(MeinArray) MeinArray(i) = "" Next End Function Diese Funktion durchläuft das gesamte Array und setzt jedes Element des Arrays auf nichts ( "" ). Da sind wir uns ja alle einig !?
Wenn ich nun ein Array habe und dies der Funktion übergebe, wird das Array (solange man sich beim Debuggen innerhalb der CleanUPArr Funktion befindet leer geräumt)
Wenn der Compiler nun aber zurück springt von wo die Funktion aufgerufen wurde.. siehe da... das Array ist genauso wie vorher, als hätte ich es per CallBy Value übergeben.
ALso jetzt meine Frage: Mache ich definitiv etwas falsch... oder ist dies ein "ich-bin-heute-nicht-gut-gelaunt Compiler Problem" ? Weil es ist nicht immer das eine Funktion die mit Reference arbeitet dieses Problem zeigt.
Oder muss man bei CallByReference sonst noch irgendwas beachten?
|
|