AGB  ·  Datenschutz  ·  Impressum  







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

Records, Pointer, Listen & Co.

Ein Thema von Evian · begonnen am 21. Sep 2006 · letzter Beitrag vom 23. Sep 2006
Antwort Antwort
Seite 2 von 2     12   
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#11

Re: Records, Pointer, Listen & Co.

  Alt 22. Sep 2006, 14:34
@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.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#12

Re: Records, Pointer, Listen & Co.

  Alt 22. Sep 2006, 15:34
ggf. kann hier das TObjectList TemplateTObjectList Template viel Arbeit ersparen...

mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#13

Re: Records, Pointer, Listen & Co.

  Alt 22. Sep 2006, 16:46
Hi,

@Elvis:
Zitat von Elvis:
@Oki, was nicht geht, geht nunmal nicht.
Gehn tuts. Das ist nicht die Frage. (oder ich habe hier was falsch verstanden)
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!!!

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
  Mit Zitat antworten Zitat
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#14

Re: Records, Pointer, Listen & Co.

  Alt 22. Sep 2006, 20:21
öhm die frage ist jetzt vielleicht 'n bisschen doof, aber zum Glück darf man hier ja auch "doofe Fragen" stellen.

und zwar wäre meine Frage zu:

Zitat von oki:
Ich persönich habe aber fest gestellt, dass man immer wieder zusätzliche Methoden für den Zugriff auf die einzelnen Elemente in der Liste benötigt.
Muss ich jetzt für den Zugriff auf die Werte der TMyData-Objekte immer eine eigene Zugriffsfunktion implementieren, oder kann ich mir nicht auch einfach die einzelnen Objekte komplett aus der Liste holen und dann direkt auf die Werte zugreifen?! Also ich meine sowas wie:

Delphi-Quellcode:

VAR
tempMyData : TMyData;
...

tempMyData := DataList.Items[Index];
x := tempMyData.FParam1
y := tempMyData.FParam2
...
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#15

Re: Records, Pointer, Listen & Co.

  Alt 22. Sep 2006, 20:26
Zitat von oki:
@Elvis:
Zitat von Elvis:
@Oki, was nicht geht, geht nunmal nicht.
Gehn tuts. Das ist nicht die Frage. (oder ich habe hier was falsch verstanden)
Sorry, war blöd formuliert. Ich meinte, dass man bei einer dekorierten OvjectList schlecht etwas anderes reinwerfen kann als das was in der einzigen Add Methode steht.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#16

Re: Records, Pointer, Listen & Co.

  Alt 23. Sep 2006, 12:41
Zitat von Elvis:
Ich meinte, dass man bei einer dekorierten OvjectList schlecht etwas anderes reinwerfen kann als das was in der einzigen Add Methode steht.
Ja, und genau das will ich eigentlich auch damit erreichen. Bei mir soll da normaler weise auch nichts anderes rein.


Zitat von Evian:
Muss ich jetzt für den Zugriff auf die Werte der TMyData-Objekte immer eine eigene Zugriffsfunktion implementieren, oder kann ich mir nicht auch einfach die einzelnen Objekte komplett aus der Liste holen und dann direkt auf die Werte zugreifen?!
Klar, du mußt hier nicht mit Gewalt Methoden implementieren die du nicht haben willst. Normalerweise ist es jedoch so, dass man in so einer Objekt-Liste Sachen ablegt, auf die man auch öfter mal zugreift.
In deinem letzten Beispiel ist die Einsparung nun gerade nicht erheblich, aber auch da. Mit einer direkten Zuweisung in der Form:
Delphi-Quellcode:
  X := MyDataList.GetXfromIndex(Index);
  Y := MyDataList.GetYfromIndex(Index);
wobei die
Funktion GetXfromIndex(Index : Integer); alle notwendigen Arbeiten für dich in der klasse übernimmt. die können sein:
- 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
  Mit Zitat antworten Zitat
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#17

Re: Records, Pointer, Listen & Co.

  Alt 23. Sep 2006, 18:31
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..
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 05:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz