Ergebnis 1 bis 4 von 4

Thema: Hilfe, Anfänger

  1. #1
    Loussa
    Gast

    Standard Hilfe, Anfänger

    Also, ich habegerade erst mit dem Programmieren angefangen und stelle mich lider ziemlich doof an...
    Meine Frage: Wann wird Speicher für lokale Variablen wieder freigegebe, und wann wird im Gegensatz dazu explizit reservierter Speicher wieder freigegeben?

    Über Hilfe würde ich mich sehr freuen!

    Liebe Grüße
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Jedi Ritter Avatar von Dodo
    Registriert seit
    26.04.2008
    Ort
    Wien
    Alter
    27
    Beiträge
    3.774
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard

    was verstehst du unter "lokalen Variablen"?
    Globale Variablen und main-Variablen: Am Ende des Programms.
    Variablen eines Unterprogramms: Am Ende des Unterprogramms.
    Eigenschaften einer Klasse: beim Aufruf des Destruktors der Klasse.

    Mich interessiert jedoch, wofür du das brauchst.
    Hatte noch nie ein Speicherproblem, vor allem nicht am Anfang.

    Mit freundlichen Grüßen
    Dodo
    Something big is coming. And there will be pirates and ninjas and unicorns...

  3. #3
    Fortgeschrittene/r
    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Prinzipiell kann man sagen: am Ende des umfassenden Skopes. Dodo hat im Normalfall schon recht, allerdings muss man es eventuell genauer betrachten:

    Code:
    int foo(float bar)
    {
       int temp = 0;
    
       for&#40;int i=0; i<10; i++&#41;
       &#123;
          temp += i; // erlaubt 
       &#125;
    
       cout << i << endl; // NICHT erlaubt, i gehört zum Skope der for-Schleife
    
       return temp + bar;
    &#125;
    Natürlich wird beim Aufruf der Funktion Platz für 2 (abgesehen vom Parameter bar) Integer auf dem Stack reserviert (temp und i), aber i darf nur innerhalb der for-Schleife genutzt werden. Ein Compiler würde den Speicher von i auf dem Stack wiederverwenden, wenn nach der for-Schleife eine neue Variable angelegt wird.

    Der Skope ( also { und } ) definiert also den Gültigkeitsbereich der Variablen auf dem Stack. Mit new angeforderter Speicher auf dem Heap (dynamischer Speicher), muss explizit mit delete wieder freigegeben werden. Machst du das nicht, hast du ein Speicherleck.

  4. #4
    Gast

    Standard

    Tja, warum brauche ich das^^ Studiere Elektrotechnik und da muss ich nun ein Semester Programmieren. Dafür musste ich oben genannte Frage beantworten. Programmieren macht echt Spaß aber leider wird das ganze in einer ziemlichen Geschwindigkeit durchgeprügelt, weshalb ich mich jetzt schon mit diesem Thema beschäftigen.
    Also, vielen Dank für eure Hilfe, habt mir wirklich sehr geholfen!

Ähnliche Themen

  1. anfänger hilfe php
    Von crossfreak im Forum Webanwendungen - Webapplikationen
    Antworten: 3
    Letzter Beitrag: 27.02.2008, 20:36
  2. Brauche Hilfe bin Anfänger!
    Von N3m3$!$ im Forum HTML & CSS Forum
    Antworten: 9
    Letzter Beitrag: 15.11.2007, 16:40
  3. anfänger sucht hilfe
    Von cebolon im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 30.03.2007, 09:38
  4. anfänger sucht hilfe
    Von Jan-Malte im Forum Eure Homepages und Foren - Vorstellung und Bewertungen
    Antworten: 6
    Letzter Beitrag: 31.12.2005, 16:15
  5. Anfänger braucht mal Hilfe
    Von neelix im Forum HTML & CSS Forum
    Antworten: 2
    Letzter Beitrag: 30.08.2005, 13:27

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •