CONST

Sommaire


Constpermet de déclarer les arguments d'un sous-programme en spécifiant qu'ils sontpassés par adresse, mais sans possibilité de modification.

 

Syntaxe

  Constmot_type liste_var_dim

 

Paramètres

Elément

Description

Restrictions

mot_type

Un des mots-clés utilisés pour lesdéclarations :
Libelle, Shortint, Date, Integer, Decimal, Char.
Dans le cas de Char, le nom de la
variable est alors suivi de ().

Ce doit être un type d'Adonix.

liste_var_dim

Liste devar_dim séparées par le caractère ','.

Aucune.

var_dim

Variable exprimée sous l'une des formes
suivantes :
nom_var ou
nom_var '('liste_sep ')'

Aucune.

nom_var

nom_de_variable.

Aucune.

liste_sep

Liste de séparateurs ','
( la place prise habituellement  par l'expression des dimensions reste vide, seul le nombre de dimensions est ainsi déclaré ).

Pas plus de 3 séparateurs car le nom brede dimensions  est limité à 4.

 

Exemples

   # Déclaration d'arguments d'un Call
   Subprog SOUS_TRAIT(ARGUMENT1, ARGUMENT2,  ARGUMENT3)
  Const Integer ARGUMENT1(,,) :# ARGUMENT1 est un tableau à 3 dimensions
  Const Char ARGUMENT2()(,)   :# ARGUMENT2 est un tableau à 2 dimensions
  Const Date ARGUMENT3        :# ARGUMENT3 est une date (sans dimension)

 

Description et commentaires

Constpermet de déclarer que les arguments d'un sous-programme sont passés paradresse, mais ne pourront pas être modifiés par le sous-programme. Lesvariables ainsi déclarées sont accessibles en lecture seulement.

Lorsqu'on ne précise pas l'indice de départ pour un tableau passé enargument, celui commence à l'indice 0, même si dans le traitement appelant, ilest déclaré commençant par un autre indice. Exemple :

   # Appel des sous-programmes
   Local Char ARGUMENT(30)(1..6) 
   Call SOUS_TRAIT0
   Call SOUS_TRAIT1

   Subprog SOUS_TRAIT0(ARGUMENT)
  ConstCharARGUMENT()()    :# tableau commençant à l'indice 0

   Subprog SOUS_TRAIT1(ARGUMENT)
  ConstChar ARGUMENT()(1..)   :# tableau commençant à l'indice 1

 

 

Erreurs associées

Erreur

Description

ERMODE(10)

Incompatibilitéde type entre la déclaration de l'argument et le paramètre passé dans leCall.

ERDIM(55)

Lenombre de dimensions déclarées ne correspond pas à la dimension de lavariable passée en paramètre.

ERARGTY(70)

L'argumentpassé au Call est une expression (elle ne peut être passée que par valeur).

 

Mots-clés associés

SHORTINT- DECIMAL- CHAR- DATE- INTEGER- LIBELLE- VALUE- VARIABLE- SUBPROG- CALL


SOMMAIRE

Adonix X3(r) L4G
Copyright (c) Adonix 1999 - All rights reserved