Differenze tra le versioni di "Le Costanti"
Riga 3: | Riga 3: | ||
Il nome attribuito alla ''Costante'' può contenere caratteri alfabetici (solitamente per convenzione in maiuscolo) e numerici posti nelle modalità accettate da Gambas. <SUP>[[[#Note|Nota 2]]]</sup> | Il nome attribuito alla ''Costante'' può contenere caratteri alfabetici (solitamente per convenzione in maiuscolo) e numerici posti nelle modalità accettate da Gambas. <SUP>[[[#Note|Nota 2]]]</sup> | ||
− | Ovviamente il valore assegnato all'inizio alla ''Costante'', <SPAN style="text-decoration:underline"><B>non</b> può essere variato</span> nel corso del programma. | + | Ovviamente il valore, assegnato all'inizio alla ''Costante'', <SPAN style="text-decoration:underline"><B>non</b> può essere variato</span> nel corso del programma. |
Essendo poste al di fuori delle routine, le ''Costanti'' hanno la qualità di essere ''globali'' <SUP>[[[#Note|Nota 3]]]</sup>. Inoltre, esse possono essere ''Pubbliche'' o ''Private''. | Essendo poste al di fuori delle routine, le ''Costanti'' hanno la qualità di essere ''globali'' <SUP>[[[#Note|Nota 3]]]</sup>. Inoltre, esse possono essere ''Pubbliche'' o ''Private''. |
Versione delle 17:13, 14 nov 2021
Se un valore è utilizzato in modo ripetuto all'interno dell'intero programma senza mai subire variazioni, è opportuno sostituirlo con un nome simbolico, definendo all'inizio del programma un identificatore di "Costante " [Nota 1] mediante la parola chiave Const.
Il nome attribuito alla Costante può contenere caratteri alfabetici (solitamente per convenzione in maiuscolo) e numerici posti nelle modalità accettate da Gambas. [Nota 2]
Ovviamente il valore, assegnato all'inizio alla Costante, non può essere variato nel corso del programma.
Essendo poste al di fuori delle routine, le Costanti hanno la qualità di essere globali [Nota 3]. Inoltre, esse possono essere Pubbliche o Private.
Esempio:
Private Const NOME_DELLA_COSTANTE As Integer = 4 ' Ora, quindi, all'interno del programma si potrà usare l'identificatore NOME_DELLA_COSTANTE al posto del numero 4 Public Sub Form_Open() Dim a As Integer a = 5 * NOME_DELLA_COSTANTE Print a End
In console sarà mostrato coerentemente il risultato: 20
Particolarità dell'uso della Costante in Gambas
Alle Costanti in taluni casi è possibile associare una variabile, una funzione o un'operazione. [Nota 4]
Il valore della Costante deve essere definito in fase di dichiarazione e non deve puntare a nessuna cosa al di fuori della dichiarazione stessa.
Pertanto, ad esempio:
Public Const NOME_COSTANTE As Integer = 1 Corretto Private Const NOME_COSTANTE As String = "aBc" Corretto Private Const NOME_COSTANTE As String = "\x0F" Corretto Private Const NOME_COSTANTE As Integer = 2108 * 1969 Corretto Public Const NOME_COSTANTE As Long = CLong(1234) ERRATO ! Private Const NOME_COSTANTE As Boolean = (Not nome_variabile) ERRATO !
La Costante in Gambas consente di sostituire la funzione Chr() con i caratteri "escape" attualmente implementati ed attivi, come i seguenti:
Carattere escape | | | Equivalente ASCII |
\t | | | Chr(9) |
\n | | | Chr(10) |
\r | | | Chr(13) |
Così, avremo ad esempio:
Private Const NOME_COSTANTE As String = "\n"
Note
[1] Dicesi Costante una grandezza il cui valore si mantiene inalterato.
[2] E' possibile utilizzare, come identificatore di Costante, il nome di una parola chiave, di una funzione oppure di un numero, purché tale nome - normalmente inutilizzabile - sia posto all'interno di due parentesi graffe.
Vedere la seguente pagina: Usare come identificatore di variabile il nome di una parola chiave o di una funzione ovvero un carattere non consentito
[3] Riguardo ai valori assegnabili alle Costanti si veda anche la pagina relativa alle Espressioni costanti.
[4] Globale: ha effetto in tutta la classe e in tutte le funzioni contenute nella stessa classe.