AGB  ·  Datenschutz  ·  Impressum  







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

Class vs. Record

Ein Thema von Zwoetzen · begonnen am 6. Apr 2009 · letzter Beitrag vom 21. Apr 2009
 
Zwoetzen

Registriert seit: 19. Sep 2007
Ort: Ilmenau
93 Beiträge
 
Delphi 2009 Professional
 
#1

Class vs. Record

  Alt 6. Apr 2009, 09:37
Hi DP'ler,

heute geht es mal nicht um ein spezielles Problem, sondern es wird etwas allgemeiner. Die Frage ist eigentlich schnell gestellt:

Class vs. Record: Wo liegen die Unterschiede und wann sollte man was nehmen?

Gerade bei den erweiterten Records, die Properties und Methoden haben können, drängt sich bei mir immer mehr die Frage in den Vordergrund, wo es da eigentlich noch Unterschiede gibt: Rein von der Syntax sehen die beiden ja (fast) identisch aus

Ein was ist mir schon aufgefallen:
Instanzen von Klassen müssen am Anfang einer zB Funktion selbst angelegt werden, und am Ende auch selbst freigegeben werden. Dementsprechend gibt es Konstrulktoren und Destruktoren.
Record-Variablen legen sich gewissermaßen selbst am Anfang der Funktion an, und man brauch sie nicht freigeben. Entsprechend fehlen Create und Destroy (und entsprechend müsste man glaube mit New() und Dispose() arbeiten, wenn man zB eine Liste füllen will)

Dann muss man bei Klassen beachten, dass man in den Instanzvariablen nur Zeiger stehen hat: Eine Zuweisung kopiert den Zeiger, und nicht das ganze Objekt. Soweit ich weiß, ist es bei Records genau andersrum: Eine Zuweiung dupliziert das Record. (Wenn ich falsch liege, bitte korrigieren ^^)

Ich denke mal, das wird nicht die einzigen Unterschiede sein:
Was gibt es noch zu Beachten, wenn man Records oder Klassen verwendet? Gibt es irgendwelche Vorteile, irgendwelche Nachteile? Gibt es gewisse Situationen, in dem man besser ein Record als eine Klasse verwendet bzw umgekehrt? Oder ist es letztendlich immer Geschmackssache?

Fragen über Fragen, ich hoffe, als Antwort kommt nicht nur die 42

MfG Zwoetzen
  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 01:53 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