Associare una stringa a un identificatore unico numerico mediante le funzioni Quarks del API di libglib-2.0
Da Gambas-it.org - Wikipedia.
Versione del 8 giu 2024 alle 14:04 di Vuott (Discussione | contributi)
Le funzioni esterne "Quarks" della libreria di Glib-2.0 consentono di associare una stringa a un identificatore unico numerico.
E' necessario avere installata nel sistema e richiamare in Gambas la libreria condivisa: "libglib-2.0.so.0.8000.2 ".
In particolare:
- la funzione "g_quark_from_string()" attribuisce un numero unico identificativo a una determinata stringa;
- la funzione "g_quark_to_string()" restituisce dal numero la stringa a esso associata;
- la funzione "g_quark_try_string()" restituisce il numero associato a una determinata stringa.
Mostriamo di seguito un semplice esempio pratico:
Library "libglib-2.0:0.8000.2" ' GQuark g_quark_from_string (const gchar *string) ' Gets the GQuark identifying the given string Private Extern g_quark_from_string(gstring As String) As Integer ' const gchar * g_quark_to_string (GQuark quark) ' Gets the string associated with the given GQuark. Private Extern g_quark_to_string(quark As Integer) As String ' GQuark g_quark_try_string (const gchar *string) ' Gets the GQuark associated with the given string, or 0 if string is NULL or it has no associated GQuark. Private Extern g_quark_try_string(gstring As String) As Integer Public Sub Main() Dim s1, s2 As String Dim qrk As Integer s1 = "xxxxxxxxxxxxxxxx" qrk = g_quark_from_string(s1) Print qrk Print g_quark_to_string(qrk) Print s2 = "zzzzzzzzzzzzzzzz" qrk = g_quark_from_string(s2) Print qrk Print g_quark_to_string(qrk) Print Print g_quark_try_string(s1) Print g_quark_try_string(s2) End