Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi unbestimmter Datentyp deklarieren (https://www.delphipraxis.net/147789-unbestimmter-datentyp-deklarieren.html)

vsilverlord 16. Feb 2010 17:27

Re: unbestimmter Datentyp deklarieren
 
später benutz ich das so, indem ich TBuffer deklariere und im tieferen Klassen die Variable als Tbufferextended erzeuge. Somit lege ich praktisch erst später den Typ fest und kann flexibel agieren. Das Problem ist, dass ich das bei jedem Datentyp eine neue Klasse erstellen muss, die völlig analog zu den anderen ist (siehe oben, das einzige, wo sich TbufferTvektor3 und TBufferextended unterscheiden ist die deklaration der Variable)

implementation 16. Feb 2010 17:29

Re: unbestimmter Datentyp deklarieren
 
Dann könnten dir Generics doch helfen. :feuerchen:

vsilverlord 16. Feb 2010 18:00

Re: unbestimmter Datentyp deklarieren
 
hi, ich lese mich gerade ein. Du meinst generische Klassen? :bouncing4:

implementation 16. Feb 2010 18:06

Re: unbestimmter Datentyp deklarieren
 
Genau.

vsilverlord 17. Feb 2010 10:01

Re: unbestimmter Datentyp deklarieren
 
hallo, wie genau definiere ich das jetzt, geht das so:
Delphi-Quellcode:
type
 werte<T> = array of T;

tbuffer = class
private
items: werte<T>; //ttrait als unbestimmter Datentyp
...
public
...
procedure setbestimmterdatentyp(bestimmterdatentyp: AnyType);
wie sage ich jetzt, dass <T> zb integer annehmen soll?

himitsu 17. Feb 2010 10:18

Re: unbestimmter Datentyp deklarieren
 
Das T ist in diesem Fall der Platzhalter für den Typ in der Generic-Deklaration.
Wenn du es jetzt so schreibst,
Delphi-Quellcode:
items: werte<Integer>;
dann heißt das, daß überall, wo im Generic "T" vorkommt, "Integer" eingesetzt werden soll;


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:25 Uhr.
Seite 2 von 2     12   

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