Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
6. Apr 2009
der Vorteil beim Record ist halt, daß man (wenn man bestimmte Regeln einhält) mit einem Zeiger auf diesen Record und mit direktem Zugriff auf den Inhalt, alles anstellen kann, was man mag.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
6. Apr 2009
Typ-Infos gibt es aber auch teilweise zu Records :angel2: die werden doch z.B. zum Initialisieren/finalisieren verwendet.
nja, aber zumindestens .... Records kennen vererbung und das war ja grad die Frage :mrgreen:
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
6. Apr 2009
Beispiele siehe MiniMathLib und TBigInt
hab's grad nochma getestet:
Strict Private, Private und Public ist in Records möglich.
Strict Protected, Protected und Published nicht.
das mag der Compiler alles:
Type TTestRec = Record
Strict Private
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
6. Apr 2009
Records kennen Sichtbarkeiten :stupid:
also mindestens Private und Public
aber Strict kennen sie (glaub ich grad) nicht.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
6. Apr 2009
ja und wenn man gerade dieses nicht benötigt, dann kann man auch (manchmal sogar optimaler) Records verwenden.
Also im Grunde hat beides seine Vorteile und man muß im Einzelfall selbst abwegen,
was sich da besser macht und man dann am Ende bevorzugt.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
6. Apr 2009
OK, vom Dateninhalt her, aber nicht vom Zugriff ... der enthaltene/untergeordnete Record ist dann nicht mehr "direkt zugreifbar.
tpasatz.stat1 ist dann, in der Ableitung, nicht mehr via tpsatz2.stat1 erreichbar, sondern nur noch via tpsatz2.tpasatz.stat1 (OK, man könnte sich über ein Property eine Umleitung einrichten, aber das wäre ja ein Umweg)
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
6. Apr 2009
also inzwischen gibt es da kaum noch Unterschiede ... in Records kann man ja nun auch Funktionen/Prozeduren zur Verarbeitung anlegen.
bezüglich der Speicherung der Daten haben beide ihre Vorteile:
- Klassen lassen sich leicht serialisieren
- Records dafür sehr gut direkt binär verarbeiten/speichern (also wohl besser für Datenübertragung und Binärdateien)
Records lassen sich direkt in...