Array ohne Typ wie bei WriteLN?

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Array ohne Typ wie bei WriteLN?

Beitrag von pluto »

Hallo,
ich habe schon in denn Quellcode gesucht aber nichts passendes gefunden !

Weil er findet WriteLn nicht wenn ich mit rechter Maustaste und Definaiton suchen sage !

Ich habe schon mit grep selbst gesucht aber nichts passendes gefunden !

Also ich möchte gerne eine Array Definieren ohne typ Angabe... halt so wie bei WriteLn

und ich möchte dann feststellen welche Eintrag was ist ob es nun ein String, ein Integer eine Farbe ein Bool Wert ist je nachdem !

Kann mir jemand sagen wie ich sowas machen könnte ?
MFG
Michael Springwald

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: Array ohne Typ wie bei WriteLN?

Beitrag von theo »

Varianten wären eine Möglichkeit

uses
..., Variants;

a:Array[0..9] of Variant;

a[0]:='pluto';
a[1]:=345;
a[2]:=false;

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Daran habe ich auch schon gedacht !
Kann ich denn die Funktion so aufrufen wie WriteLN ?
also ohne die [] ?
und kann ein TVariant alles sein ?
z.b. auch eine TColor oder eine eigene klasse ?

edit:
das habe ich evlt. falsch bzw. nicht aussreichend beschrieben:
ich möchte eine funktion haben die wie WriteLN aufgeufen werden kann
MFG
Michael Springwald

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Nein, writeln ist fest im compiler implementiert das was du willst geht nicht.
Es geht nur mit [] und array of variant

umsonst ist das nicht in vielen rtl und fcl funktionen so gelöst siehe z.b. tdataset.locate
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Habe ich mir schon fast gedacht !
Weil ich auch keinen Qullcode gefunden habe !
schade !
Aber bei meinem Aktuellen problem muss ich so oder so einen anderen Weg gehen ist mir noch aufgefallen !
MFG
Michael Springwald

Antworten