TypeOf

Da Gambas-it.org - Wikipedia.

La funzione TypeOf() ritorna un valore intero che rappresenta, conformemente all'enumerazione presente nel file sorgente di Gambas User.Home &/ "main/share/gb_type_common.h", il tipo di dato, al quale appartiene una variabile.

La sua sintassi è:

TypeOf(variabile) As Integer


Specificare il tipo di dato

Dal valore numerico, che rappresenta il tipo di dato, possiamo ottenere la sua specificazione letterale almeno mediante i seguenti due esempi:

Public Sub Main()
 
 Dim tipi As String[] = ["Void", "Boolean", "Byte", "Short", "Integer", "Long", "Single", "Float", "Date", "String",
                         Null, "Pointer", "Variant", "Array o Function", "Class o Structure", "Null", "Object"]
 
 Dim i As Integer
 
 Print "Il tipo di dato è:  "; tipi[TypeOf(i)]
  
End

oppure andando a verificare il tipo di dato direttamente nella seconda enumerazione dei tipi di dati contenuta nel file "gb_type_common.h" dei sorgenti di Gambas: [Nota1]

Public Sub Main()

 Dim s As String = File.Load(User.Home &/ "gambasdevel/main/share/gb_type_common.h")
 Dim c As Short
 
 Dim tipo As Integer   ' Imposta un tipo di dato
 
 c = InStr(s, "VOID") - 1
 
 Do
   Repeat 
     Inc c
   Until s[c, 1] = "="
   If Val(s[c + 2, 2]) == TypeOf(tipo) Then 
     c -= 13
     Print s[c, 8]
     Break 
   Endif
 Loop 
 
End

Si può utilizzare con le opportune modifiche anche la definizione degli identificatori numerici dei tipi di dati (Gambas datatypes identifiers) presente nel file sorgente di Gambas User.Home &/ "gambasdevel/main/share/gambas.h".


Note

[1] Vedere anche la seguente pagina della Wiki: Conoscere in runtime il numero identificatore di un tipo di dato di una variabile presente nel codice