Autor Beitrag
Delphi-Laie Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Fr 10.03.17 20:34 
So, liebe Leute, die Sache ist jetzt soweit abgeschlossen, daß dieser Algorithmus nach Pascal übersetzt ist, von Delphi compiliert wird und in mein Lieblingsprogramm eingearbeitet ist. Dieser Algorithmus war schon eine ziemlich heftige Angelegenheit, eine meiner aufwendigsten Implementierungen (auch ablesbar an der massiven Hilfe, um die ich das Forum "anschnorrte").

Nochmals mein herzlicher Dank, vor allem an Horst_H und in allerster Linie an Frühlingsrolle, auch für diese Vorarbeit!

Erstmal muß ich mich jetzt erholen. Jedoch werde ich recht bald die Properties versuchen, unterschwellig kribbelt es schon wieder... denn Properties machen den Quellcode kompakter. Da ich gerade bei diesem Thema bin: Ich liebe funktionell und optisch komprimierte Quellcodes, weil ich ungern scrolle und diese Quellcodes ja nicht wie einen Text lese. Also nicht wundern, falls ihn sich jemand anschaut.

Edit: Natürlich wünsche ich Euch ein schönes Früh-Frühlingswochenende!
Delphi-Laie Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Sa 11.03.17 12:12 
Hallo Frühlingsrolle und die anderen, entschuldigt bitte, daß ich nochmal störe, aber ich habe noch einen "Nachschlagbedarf", bitte.

Beide Klassen, die TLeonardo und auch die TSequence, haben je zwei Konstruktoren (einen "einfachen" und einen mit Parameter) und nur der zweite Destruktur. Nur TSequence hat einen "expliziten" Destruktor, der optional - vor inherited bzw. inherited destroy - Speicher freigibt.

Müßte nicht konsequenterweise der Destruktor der TLeonardo-Klasse (den es explizit noch gar nicht gibt, wird also nur der einer Vorfahrenklasse aufgerufen) ebenfalls mit "[irgendetwas].Free" vor inherited optional beanspruchten Speicherplatz optional auch wieder freiräumen? Falls ja, bin ich mir jetzt nicht schlüssig, welche Datenstruktur dann freigegeben werden müßte.

Mit seinem jetzigen Stand scheint das implementierte Smoothsort noch leicht "speicherleck" zu sein. Ich habe aber darauf geachtet, jedem Konstruktor auch einen Destruktor zuzuordnen, deshalb schätze ich, daß sich am Destruktor der TLeonardo-Klasse noch etwas verbessern läßt.

Danke und Gruß

Delphi-Laie


Zuletzt bearbeitet von Delphi-Laie am Sa 11.03.17 13:47, insgesamt 1-mal bearbeitet
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 11.03.17 12:33 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: Delphi-Laie
Delphi-Laie Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Sa 11.03.17 13:45 
Das leuchtet ein, vielen Dank!

Nun, dann werde ich mal weiter nach dem Speicherleck fahnden....

Ergänzung: Meine allererste Fragen in dieser Diskussion "Wo ist der Destruktor" ziehe ich übrigens zurück. Java hat ja eine automatische Speicherbereinigung, das war mir zu dem Zeitpunkt nicht bewußt.
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1652
Erhaltene Danke: 243

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mi 29.11.17 21:13 
Hallo,

lang ist es her.Aber ich habe doch damals eine tolle slide-show zu smooth sort gesehen:
Bilder sagen mehr als 1000+ Worte und 112 noch mehr :-)
de.slideshare.net/habib_786/smooth-sort

Gruß Horst

Für diesen Beitrag haben gedankt: Delphi-Laie
Delphi-Laie Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Mi 29.11.17 22:55 
Danke, die kannte ich schon - woher, weiß ich nicht mehr.

Meine Englischkenntnisse sind hochgradig "intermediate", aber soweit ich diese Formulierung

Zitat:
an alternative for sorting in situ


verstehe, wird mit ihr Smoothsort als Alternative für das (=zu dem) In-Situ-Sortieren angeboten, bennant, beworben, was auch immer.

Das ist es jedoch nicht, sondern ein (alternatives) In-Situ-Sortieren.

Aber Englisch ist als Wissenschaftssprache ja soooo geeignet.
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 30.11.17 03:00 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: Delphi-Laie