AGB  ·  Datenschutz  ·  Impressum  







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

Objektvergleich

Offene Frage von "mytar"
Ein Thema von mytar · begonnen am 28. Dez 2004 · letzter Beitrag vom 29. Dez 2004
 
choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#5

Re: Objektvergleich

  Alt 29. Dez 2004, 11:43
Hallo mytar,

i.A. wird Dein Ansatz mit CompareMem nicht funktionieren und entspricht darüber hinaus auch nicht dem Paradigma des OO: Ein Objekt ist bestimmt Durch seine Struktur (hier: Klasse), sein Verhalten (hier: Kombination aus Attributen und Klasse) sowie dessen einzigartiger Identität (niemals identisch bei verschieden Objekten).

Weil Du von Objekten identischer Klassen ausgehst (was in sich schon ein zweifelhafter Ansatz ist und zugunsten eines, der von identischen Typen ausgeht, aufgegeben werden sollte vgl. Booch) scheinst Du lediglich die gleichheit der Attribute überprüfen zu müssen. Während aber Attribute gleich sein können, obgleich sie eine unterschiedliche Identiät aufweisen (siehe Objekte selbst, aber auch in Delphi als Referenzen implementierte Datentypen wie Strings) und ein vergleich über deren Speichersignatur bzw Referenz bereits fehlschlegt, kann es darüber hinaus auch sein, dass sich die Implementierung einer Klasse auf Attribute stützt, die "nach Außen" keine Bedeutung haben (z.B. ein Referenzzähler bei Objekten, die Interfaces unterstützen).
Gerade letzterer Punkt sollte zeigen, dass Du von der Implementierung durch den Compiler abstrahieren solltest und stattdessen einen Ansatz über Reflektion (RTTI) oder Delegation (siehe Implementierungen von Assign btw AssignTo) wählen solltest...
gruß, choose
  Mit Zitat antworten Zitat
 


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 09:33 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