Affectations
[ LET ] Destination = Expression
Affecte la valeur d'une
Expression à l’un des éléments suivants :
-
Une variable locale.
-
Le paramètre d'une fonction.
-
Une variable globale ou une variable de classe.
-
Un membre d'un tableau (array).
-
Une variable d'objet public.
-
Une propriété d'objet.
Ne peut pas être employé pour définir la valeur retournée par une fonction.
Pour assigner la valeur de retour d’une
fonction, utilisez l’instruction
RETURN.
Quelques instructions qui retournent quelque chose utilisent également la syntaxe d'affectation :
EXEC
,
NEW
,
OPEN
,
RAISE
,
SHELL
.
Exemples
iVal = 1972
Name = "Gambas"
hObject.Property = iVal
cCollection[sKey] = Nom
...
Affectations de structures ou tableaux intégrés
Depuis 3.17
Si la
Destination de l'affectation est en fait une structure ou un tableau intégré, le contenu de
Expression est copié récursivement dans
Destination.
Bien sûr,
Expression est d'abord convertie au type de donnée de
Destination avant que la copie ne soit effectuée.
Lorsqu'un tableau est copié, si la source et la destination n'ont pas le même nombre d'éléments, alors le plus petit nombre d'éléments est utilisé pour effectuer la copie.
La copie n'est effectuée que si la structure ou le tableau sont intégrés. S'ils ne sont pas intégrés, alors les structures et les tableaux sont des objets Gambas normaux, et l'affectation est juste une copie de référence.
Examples
Struct Person
FirstName As String
LastName As String
Age As Integer
BirthDate As Date
Height As Float
End Struct
Private $aPeople[16] As Struct Person
Private $hFirst As Struct Person
Private $aOther[4] As Struct Person
...
' Copie la 4e personne dans $hFirst
$hFirst = $aPeople[3]
' Copie les quatre premières personnes dans $aOther
$aOther = $aPeople
' Seules les quatre premiers éléments de $aPeople sont modifiés
$aPeople = $aOther
Voir aussi