Syntaxe
Donne un nom à une valeur fixe. On relit la constante avec # devant son nom, partout dans le programme.
#CONSTANT <NAME> <value>
#CONSTANT <NAME> = <value>
#<NAME>Les éléments
| <NAME> | Le nom de la constante, sans tenir compte de la casse, sans sigil. Ce ne doit être ni un nom de commande du catalogue, ni une constante intégrée #AK_…. |
|---|---|
| <value> | Un nombre, un texte, ou une expression d'autres constantes. |
À savoir
- Les constantes sont posées avant la première ligne : on peut donc lire une constante au-dessus de sa propre ligne.
- Un nom déclaré deux fois est refusé :
Duplicate BASIC constant: #LIVES. Un nom de commande aussi (#CONSTANT LEFT 1) : choisissez par exemple#DIR_LEFT. - Une constante et une variable écrites exactement pareil, casse comprise, compilent en un programme qui ne démarre pas. Donnez-leur des noms différents.
- Un sigil sur le nom (
#CONSTANT NAME$ "x") compile, mais le programme ne démarre pas. Une faute de frappe#SPEDEet une écriture#SPEED = 6ne se voient qu'à l'exécution de la ligne. - Dans un programme avec
DO … LOOP, une FUNCTION ne peut pas lire une constante : elle s'arrête sur… is not defined. Copiez la constante dans unGLOBALet lisez celui-ci. - Le
#NAME = 5de PureBasic ne déclare pas de constante hors d'uneENUMERATION. Écrivez#CONSTANT NAME 5.
Exemple
Console(Str(#MAX_LIVES)) ' 3#CONSTANT MAX_LIVES 3#CONSTANT TITLE "Space Rocks"#CONSTANT GRAVITY = 9.81#CONSTANT DOUBLE_G #GRAVITY * 2Console(#title + " " + Str(#DOUBLE_G)) ' Space Rocks 19.62Dans le manuel : Constantes et opérateurs