![]() |
Erklärung von record (Delphihilfe unverständlich :))
Hi,
kann mir wer erklären, wie man die Funktion record benutzt? Die Delphihilfe wirft wie immer nur noch mehr Rätsel auf. Ich habe bisher verstanden, das man es unter type deklariert und mehrere Variablen verschiedenen Typs reinspeichern kann. Nun versucht die Delphihilfe etwas mit "case" zu erkären, wo ich allerdings nicht durchsteige. Bitte um Hilfe^^ (und um Fehlerberichtigung falls ich schon falsch liege) Danke im Vorraus MfG ErdNussLocke |
Re: Erklärung von record (Delphihilfe unverständlich :))
Ein Record ist einfach ein zusammengesetzter Datentyp.
z.B.
Delphi-Quellcode:
TAdresse = Record
Name: string; Vorname: string; GebDat: TDate; ... end; ... adr: TAdresse; ... adr.Name := 'Erdnusslocke'; adr.Vorname := '...'; ... |
Re: Erklärung von record (Delphihilfe unverständlich :))
ok das is schonmal gut. danke dafür
und was hat es mit diesem case auf sich? |
Re: Erklärung von record (Delphihilfe unverständlich :))
Was steht da genau mit dem case drinn?
|
Re: Erklärung von record (Delphihilfe unverständlich :))
z.b. das hier
Delphi-Quellcode:
TPolygon = record
X, Y: Real; case Kind: Figure of TRectangle: (Height, Width: Real); TTriangle: (Side1, Side2, Angle: Real); TCircle: (Radius: Real); |
Re: Erklärung von record (Delphihilfe unverständlich :))
Das ist schon ein recht fortschrittliches Sprachfeature.
Das erlaubt dir, deine records dynamisch zu deklarieren, das heißt die genauen Bestandteile des records hängen von dem Aufzählungswert Kind ab. |
Re: Erklärung von record (Delphihilfe unverständlich :))
dabei handelt es sich nicht um einen normalen Record, sondern um einen Union. Je nach Wert einer Variable (hier Kind) sind andere Teile der Datenstruktur sichtbar.
|
Re: Erklärung von record (Delphihilfe unverständlich :))
aso ok. warum schreiben die das nicht so in die Hilfe ;)
Vielen Dank an alle! |
Re: Erklärung von record (Delphihilfe unverständlich :))
Zitat:
Zitat:
|
Re: Erklärung von record (Delphihilfe unverständlich :))
Empfehlung von mir : Finger weg von dem Kram. Zumindest solange, wie Du denkst ein Record sei eine Funktion. :zwinker:
Zitat:
[Edit] mir fällt gerade noch ein : der Variant braucht pro Einheit immer soviel Platz, wie das größte Element. Krasses Beispiel : der Variant besteht nur aus einem integer oder alternativ einem TImage von 5 MB. Der integer würde dann 5 MB belegen !! :cyclops: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:16 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 by Thomas Breitkreuz