![]() |
Einstieg in die OOP
Hallo.
Versuche inzwischen seid heute Mittag die OOP zu verstehen. Also der Aufbau von Klassen, Objekten, Instanzen usw. Habe dabei gegoogelt und mir die Grundlagen auf ![]() Gruss Sven |
Re: Einstieg in die OOP
Versuch mal:
![]() |
Re: Einstieg in die OOP
Wo ist da OOP zu finden ? :shock:
|
Re: Einstieg in die OOP
Das Klassen-Tu´torial vielleicht? :roll:
|
Re: Einstieg in die OOP
ja, das Tuto ist gut. Zweck voll erfüllt ! :thumb:
|
Re: Einstieg in die OOP
Oh man, das sieht ja klasse aus "Wortwitz hehe :stupid: "
Vielen Dank, werd mich gleich heute Mittag mal einlesen.:) Gruss Sven |
Re: Einstieg in die OOP
Kurz, kompakt, verständlich mit sehr guten Beispielen! :thumb:
Es gibt Delphi Bücher, die können das überhaupt nicht richtig erklären, teilweise viel zu umständlich! Von mir gibt's dafür eine glatte EINS! Gruss pajofego |
Re: Einstieg in die OOP
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:) |
Re: Einstieg in die OOP
Eigendlich gilt neue Frage, neuer Thread und eine Frage pro Thread, aber ichb will mal so frei sein ...
Zitat:
Wenn du den Zeiger auf nil stzt, zeigt der Zeiger halt nirgendwohin, aber die Daten sind noch da. Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Wenn du ein Objekt nichtmehr brauchst, nehme am besten immer FreeAndNil() ... |
Re: Einstieg in die OOP
Vorab : der Thread ist mittlerweile Off-Topic. Und ich glaube es wird Zeit, etwas mit Legenden aufzuräumen. Was mit freigeben von Speicher, ob Variable oder sonstwas zu tun hat, das bezieht sich lediglich auf die Laufzeit des Programmes. Nicht mehr und nicht weniger. Ist das Programm korrekt beendet, also "terminiert" wie es in der Informatik heißt, dann ist davon nichts mehr übrig. Zumindest ist es äußerst schwierig, so etwas irgendwie hinzukriegen, daß Speicher blockiert wird.
Was in der Hauptsache wichtig ist : während der Laufzeit sollte nicht jedes mal irgendein Speicherbereich neu belegt werden und das immer wieder, ohne ihn irgendwann wieder freizugeben. Unendlich ist de Speicher nämlich nicht. Wie gesagt, das ganze hat mit OOP nichts mehr zu tun. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:19 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