Conoscere in runtime il numero identificatore di un tipo di dato di una variabile presente nel codice
Da Gambas-it.org - Wikipedia.
Versione del 5 apr 2023 alle 10:02 di Vuott (Discussione | contributi)
Nel file dei sorgenti di Gambas "/home/[USER]/gambasdevel/main/share/gambas.h " è presenti - quasi all'inizio - l'elenco dei numeri identificatore dei tipi di dati (Gambas datatypes identifiers ), previsti da Gambas.
Per conoscere a quale numero identificatore di tipo di dato appartiene una variabile dichiarata nel codice, si dovrà ottenere l'indirizzo di memoria di tale variabile e sottrarre a questo 8 unità come segue:
Public Sub Main() Dim p As Pointer Dim id As Short ' Pone un variabile di tipo "Short" da verificare: p = VarPtr(id) ' Trova il numero identificatore del tipo di dato della variabile: Print "Gambas datatype identifier: "; Byte@(p - 8) End
Se la variabile, di cui trovare il numero identificatore del tipo di dato, è una Struttura, allora avremo:
Public Struct Struttura b As Byte c As Short End Struct Private id As Struct Struttura ' Ovviamente si può usare anche la parola-chiave "New" Public Sub Main() Dim p As Pointer p = VarPtr(id) Print "Gambas datatype identifier: "; Byte@(p - 8) End