Variablen löschen

  • VB6

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Buddha-monk-little.

    Variablen löschen

    Hi !!

    Ich wollte mal fragen ob es eine Methode gibt Variablen, Arrays und Objekte zu löschen und somit den Speicher wieder freizugeben. Bis jetzt kenn ich nur die folgenden Methoden:

    Strings:
    strString = ""

    Objekte:
    Set objObjekt = Nothing

    Array:
    ReDim strArray(0 To 0) oder
    Erase strArray

    gibt es noch andere Methoden um Variablen nocht "kompletter" zu löschen und wie kann man Integer, Longs oder Currency "leeren" bzw. löschen?

    mfg
    Buddha-monk-little

    P.S.: Ich verwende VB6
    Andere Methoden als die genannten gibt es nicht.

    Edit: Integer belegen soweit ich weiß immer den selben Speicherplatz, egal was drin steht. Andere Zahlentypen ebenfalls.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Setz die variablen doch einfach auf 0 oder leeren String.

    Alternatik kannst du auch ein dynArray mit nur einem einzigen Element basteln und das mit ReDim OHNE preserve "leeren"

    Visual Basic-Quellcode

    1. Dim meinString() As String
    2. redim meinString(1)
    3. meinString(1) = "Text"
    4. msgbox meinString(1)
    5. redim meinString(1) 'String löschen
    6. msgbox meinString(1)
    Gruß, Agent Smith 8-)

    activeFlags = (lazy OR weary)

    Lemgo-Verschwörung | Mathematics | VB-Paradise in blau
    erstmal vielen Danke das hilft mir zwar nicht direkt weiter ^^ aber hat meine Frage volkommen beantwortet :-).

    @Agent: Wenn ich mich nicht irre würde dein Vorschlag doch genau das Gleiche wie
    strString = ""
    bewirken?!

    Weiß einer ob die Variablen soblad ihre Gültigkeit vorbei ist sprich der Sub in dem sie Deklariert wurden auch entgültig gelöscht werden oder bleib der Speicher belegt (ka vielleicht solange die Form noch geladen ist oder so) ?
    Wenn ich mich nicht irre würde dein Vorschlag doch genau das Gleiche

    ja ich hab ja geschrieben dass du die variabeln bloß auf 0 setzen brauchst, aber das andere wäre alternativ für z.b. benutzerdefinierte typen wo dann mehrer gleichzeitg zurückgesetzt werden

    wegen Gültigkeit:
    also variablen die mit "dim" deklariert werden sind auch nur in der Sub vorhanden und anschießend weg, sinst musst du sie mit static deklarieren.
    Außerdem gibt es noch die tatsache, dass wenn du außerhalt von subs variablen mit puplic deklarierst, das die variable auch noch da ist, wenn das forumlar entladen wurde, was bei dim nicht der fall ist.
    Gruß, Agent Smith 8-)

    activeFlags = (lazy OR weary)

    Lemgo-Verschwörung | Mathematics | VB-Paradise in blau
    Danke !

    @Agent: Stimmt daran hatte ich nicht gedacht, dass man es auch mit Integer etc machen kann. :O

    Danke mehr wollte ich nicht wissen. Mir ist zwar schon klar das die Variablen nur in dem Sub dann gelten aber es hätte ja sein können das VB den Speicher noch nicht frei gibt (aus was für Gründen auch immer)

    nja also THX @all

    mfg & thx
    B.M.L