AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Einstieg in die OOP

Ein Thema von sveno2k5 · begonnen am 1. Feb 2005 · letzter Beitrag vom 2. Feb 2005
Antwort Antwort
sveno2k5

Registriert seit: 24. Jan 2005
7 Beiträge
 
#1

Re: Einstieg in die OOP

  Alt 2. Feb 2005, 19:26
Habe gerade mal angefangen zu lesen, und den Anfang hab ichs ehr gut verstanden
Bei den Destruktoren hab ich aber ein paar Fragen noch.

Ist "ein Objekt aus dem Speicher löschen" gleichbedeutend mit "Die Objektreferenz auf nil setzen"? Wenn ja, warum löscht man die Objektreferenz nicht einfach?

Warum ist es nötig Objekte aus dem Speicher zu löschen? Sie nehmen ja nicht Unmengen an Ressourcen ein.

"Da der Destruktor in der Lage sein muss,Objekte freizugeben,die unvollständig erstellt wurden und deshalb
nil sind,sollte beim Freigeben eines solchen Objektes unbedingt vorher auf nil getestet werden.Wird ein
Objekt mit der Methode Free freigegeben,wird die Prüfung automatisch durchgeführt."

Warum funktioniert destroy nicht wenn die Referenz nil ist? Was macht free wenn die Referenz nil ist?

"Nach dem Aufruf von Free wurde das Objekt zwar aus dem Speicher entfernt,der Zeiger enthält aber
immer noch die Adresse des Objektes.Eine Abfrage mit Assigned liefert also nach einem Aufruf von
Free immer noch True .Entweder setzt man den Zeiger explizit auf nil oder man verwendet die Prozedur
FreeAndNil ."

Auch hier wieder, warum löscht man den Zeiger nicht einfach (Der Zeiger ist doch die Objektreferenz oder?)

Gruss Sven
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz