![]() |
Re: Records, Pointer, Listen & Co.
@Oki, was nicht geht, geht nunmal nicht.
Man muss also auch nicht prüfen ob wirklich das drin ist, was drin sein sollte. Ok, jetzt könnte jemand einwenden, dass Delphi32 nicht wirklich type safe ist, und jemand einen Hardcast seiner Lunchbox auf TSomeType machen könnte.Aber irgendwo muss man verhältnismäßig bleiben, IMHO... Ich selbst gehe aus genau diesem Grund auch lieber den Weg des Dekorierens. :) |
Re: Records, Pointer, Listen & Co.
|
Re: Records, Pointer, Listen & Co.
Hi,
@Elvis: Zitat:
Ob das der gute weg mit dem Überschreiben ist, das fragt sich. Dann frage ich auch mal so: Warum wird in TObjectList die Methode Add aus TList statisch überschrieben? Also ich war das nicht!!! :angel: Unabhängig davon ist der Tip mit den Templates beeindruckend. Da hör ich mal auf zu antworten und zieh mir das über's Wochenende mal rein. Dank r2c2! Gruß oki |
Re: Records, Pointer, Listen & Co.
öhm die frage ist jetzt vielleicht 'n bisschen doof, aber zum Glück darf man hier ja auch "doofe Fragen" stellen. :-D
und zwar wäre meine Frage zu: Zitat:
Delphi-Quellcode:
VAR tempMyData : TMyData; ... tempMyData := DataList.Items[Index]; x := tempMyData.FParam1 y := tempMyData.FParam2 ... |
Re: Records, Pointer, Listen & Co.
Zitat:
|
Re: Records, Pointer, Listen & Co.
Zitat:
Zitat:
In deinem letzten Beispiel ist die Einsparung nun gerade nicht erheblich, aber auch da. Mit einer direkten Zuweisung in der Form:
Delphi-Quellcode:
wobei die
X := MyDataList.GetXfromIndex(Index);
Y := MyDataList.GetYfromIndex(Index);
Delphi-Quellcode:
alle notwendigen Arbeiten für dich in der klasse übernimmt. die können sein:
Funktion GetXfromIndex(Index : Integer);
- Holen des Data-Objectes bei Index, - prüfen der Instanz, - Ermitteln des Wertes für x oder y, - Gültigkeitsprüfung für x oder y. Das ist dann schon wieder ne ganze Menge. Hast du diese Zugriffe an mehreren Stellen deines Programms, so hilft das schon ein stück weiter. Zudem hast du es in deinem Object einmal richtig gut durchdacht und dementsprechend geproggt und mußt dir diese Gedanken nicht jedes mal wieder von neuem machen. das macht man sicher nicht für alle Zugriffe auf die Liste, aber sicher für die gebräuchlichsten. Gut, wie du es machst bleibt dir überlassen. Wir geben dir hier nur Ideen und unsere Ansichten. Dahinter steht kein Muß. Solange du dich mit einem Weg nicht anfreunden kannst ist es o.k.. Jeder muß auch seinen eigenen Stil finden. gruß oki |
Re: Records, Pointer, Listen & Co.
Okey vielen Dank noch mal.
Da ich in der Schule ausschließlich strukturierte Programmierung (ok ich nutze ja auch die Klassen und ihre MEthoden von Delphi, aber letztendlich auch eher strukturiert...) gelernt habe fällt es mir immer wieder schwer wirklich objektorientiert zu programmieren. Auf den ersten Blick erscheint mir der Aufwand immer höher bei OOP, aber das dieser erste Blick auch irgendwo trügerisch ist, sollte ich langsam lernen.. :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:02 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