Differenze tra le versioni di "Le Costanti"
Riga 46: | Riga 46: | ||
=Note= | =Note= | ||
[1] ''Globale'': ha effetto in tutta la classe e in tutte le funzioni contenute nella ''stessa'' classe. | [1] ''Globale'': ha effetto in tutta la classe e in tutte le funzioni contenute nella ''stessa'' classe. | ||
+ | |||
+ | |||
+ | |||
+ | =Riferimenti= | ||
+ | * http://gambaswiki.org/wiki/lang/constants | ||
+ | * http://gambaswiki.org/wiki/lang/constdecl |
Versione delle 07:24, 10 lug 2020
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 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.
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 1]. Inoltre, esse possono essere Pubbliche o Private.
Esempio:
Private Const NOME_DELLA_COSTANTE As Integer = 4 ' all'interno del programma si potrà usare il nome 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
Va sottolineato che alle Costanti non è possibile associare una variabile, una funzione o un'operazione.
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 Public Const NOME_COSTANTE As Long = CLong(1234) ERRATO ! Private Const NOME_COSTANTE As Boolean = (Not nome_variabile) ERRATO ! Private Const NOME_COSTANTE As Integer = 2108 * 1969 ERRATO !
La Costante in Gambas consente di sostituire la funzione Chr() con i caratteri "escape" attualmente implementati ed attivi:
Carattere escape | | | Equivalente ASCII |
\t | | | Chr(9) |
\n | | | Chr(10) |
\t | | | Chr(9) |
\r | | | Chr(13) |
Note
[1] Globale: ha effetto in tutta la classe e in tutte le funzioni contenute nella stessa classe.