Typ einer Variablen feststellen
-
- Beiträge: 10
- Registriert: 07.04.2009 15:44
Typ einer Variablen feststellen
Hallo,
gibt es eine Möglichkeit in PB den Typ einer PB Variablen festzustellen ?
Ich denke gerade über einen generischen Ansatz nach um ein ListIcon Gadget mit Daten zu füllen - und da wäre es sehr praktisch wenn ich über den Typ der Variablen die Stringkonvertierung anstossen könnte.
Bin für jeden Schubs in die richtige Richtung dankbar...
Gruß vom Bodensee
Christian
gibt es eine Möglichkeit in PB den Typ einer PB Variablen festzustellen ?
Ich denke gerade über einen generischen Ansatz nach um ein ListIcon Gadget mit Daten zu füllen - und da wäre es sehr praktisch wenn ich über den Typ der Variablen die Stringkonvertierung anstossen könnte.
Bin für jeden Schubs in die richtige Richtung dankbar...
Gruß vom Bodensee
Christian
Code: Alles auswählen
Byte.b ; Ich bin ein Byte
Long.l ; Ich bin eine Long
String.s ; Ich bin ein String
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
-
- Beiträge: 10
- Registriert: 07.04.2009 15:44
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Das brauchste nicht feststellen, das weißt Du
,zumindest wenn
Du der Programmierer bist, sollte es so sein.

Du der Programmierer bist, sollte es so sein.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

-
- Beiträge: 10
- Registriert: 07.04.2009 15:44
Wissen ist gut Kontrolle ist besser....
Nee, mal im Ernst - folgender Ansatz:
Die Daten werden aus der Datenbank in eine Structure eingelesen.
Nun kann ich natürlich bei jeder Anwendung mit unterschiedlichen Structures von Hand die Konvertierung anstoßen oder eben über den Typ der Variablen das ganze ohne Aufwand betreiben.
..............
Gruß vom Bodensee
Christian
Nee, mal im Ernst - folgender Ansatz:
Die Daten werden aus der Datenbank in eine Structure eingelesen.
Nun kann ich natürlich bei jeder Anwendung mit unterschiedlichen Structures von Hand die Konvertierung anstoßen oder eben über den Typ der Variablen das ganze ohne Aufwand betreiben.
..............

Gruß vom Bodensee
Christian
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
PureBasic hat nur festgelegte Typen. Wenn du mit Strukturen arbeitest kannst du sowas hier machen:
Aber wenn die Datenbank das mit einem unbekannten Typ liefert, dann geht sowas nicht, es sei denn das von gekkonier funktioniert, was ich stark vermute.
P.S.: Gruß zurück vom Bodensee
.
Code: Alles auswählen
Enumeration
#TYPE_BYTE
#TYPE_LONG
; ... alle Typen halt
EndEnumeration
Structure StructName
StructureUnion
b.b
l.l
; ... alle Typen halt
EndStructureUnion
type.l
EndStructure
Procedure Test(*variable.StructName)
Select *variable\type
Case #TYPE_BYTE
Debug "Typ: Byte"
Debug "Wert: " + Str(*variable\b)
Case #TYPE_LONG
Debug "Typ: Long"
Debug "Wert: " + Str(*variable\l)
; ... alle Typen halt
Default
Debug "Unbekannter typ?"
EndSelect
EndProcedure
a.StructName
b.StructName
a\b = 30 ; Wir nutzen byte
a\type = #TYPE_BYTE
b\l = 10004 ; Wir nutzen long
b\type = #TYPE_LONG
Test(@a)
Test(@b)
P.S.: Gruß zurück vom Bodensee

Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
-
- Beiträge: 10
- Registriert: 07.04.2009 15:44
-
- Beiträge: 10
- Registriert: 07.04.2009 15:44