Utilisation de + ou & pour la concaténation

Bonjour

Voici une nouvelle question envoyée à l'aide du formulaire de demande d'aide (http://fr.libreoffice.org/get-help/poser-une-question/).
Si vous répondez, merci de penser à utiliser la fonction "répondre à tous" de votre logiciel de courrier électronique de façon que le demandeur reçoive une copie de votre réponse.

Email:: cc2192@gmail.com
Sujet:: Utilisation de + ou & pour la concaténation
Question:: Bonjour,

j'ai une petite question à vous poser concernant la concaténation de variable.

Sub Main
t1 = "reussi"
t2 = "reussi"
msgbox ("Test 1 " & t1)
msgbox ("Test 2 " + t2)
End Sub

Dans ce code, les variables sont affichés dans les deux cas mais quelle est l'utilisation la plus "correcte" des 2 ?

En vous remerciant par avance de votre réponse,
Bien cordialement,
Cédric.

Bonjour Cédric,

j'ai une petite question à vous poser concernant la concaténation de
variable.

Sub Main t1 = "reussi" t2 = "reussi" msgbox ("Test 1 " & t1) msgbox
("Test 2 " + t2) End Sub

Dans ce code, les variables sont affichés dans les deux cas mais
quelle est l'utilisation la plus "correcte" des 2 ?

En effet, les deux opérateurs sont acceptés. Cependant, en Basic, l'opérateur de concaténation de chaînes est bien l'esperluette "&". À préférer, donc, car toute ambiguïté est ainsi levée.

Dans le même esprit, l'instruction

Dim machaine As String

machaine = "les " & 3 & " petits cochons"

renvoie bien "les 3 petits cochons" car la valeur 3 est transformée à la volée. Mais, là aussi, on peut désambiguïser en écrivant :

machaine = "les" & CStr(3) & " petits cochons"

Vous l'aurez compris, si les langages de programmation sont parfois permissifs, il est toujours préférable -- du point de vue du programmeur -- de fournir un code aussi clair et non-ambigu que possible. Pensez toujours à la maintenance, qui sera probablement prise en charge par d'autres que vous.

Si vous répondez, merci de penser à utiliser la fonction "répondre à
tous" de votre logiciel de courrier électronique de façon que la liste
reçoive une copie de votre réponse.

Bien cordialement,