Page 1 sur 1

Transtypage auto ?

Publié : mar. 20/sept./2022 18:17
par Bmld76
Bonjour,

j'ai souvent eu recours a ce forum pour m'aider dans mon développement. cette fois ci je vais apporter une info que peut-être tout le monde connait déjà mais je n'ai jamais trouvé ce type d'info dans toutes les aides que j'ai consulté.

Lorsque l'on désire concaténer des variables texte et numérique, Purebasic retourne une erreur 'Can't mixte string with numericale value'. La solution logique ou trouvée sur les aides est d'utiliser la fonction de transtypage str() bien connue.
Je me suis aperçu que si la concaténation débute par une seule variable texte , alors on a comme un transrtypage automatique pour les variables numériques et donc plus d'erreur

a.i = 10
b.s = "abcd"
Debug a +" "+ b +" "+ a +" "+ a +" "+ a > erreur

Il suffit de faire précéder l'ensemble par une variable chaine vide ou str() et non à toutes les variables numériques.

a.i = 10
b.s = "abcd"
Debug ""+a+" "+ b +" "+ a +" "+ a +" "+ a > c'est bon
Debug Str(a) +" "+ b +" "+ a +" "+ a +" "+ a > c'est bon

Ayant de nombreuse concaténations diverses, ne pas utiliser str() fait gagner du temp et simplifie le code. Ideal dans les listeIconGadget ou les debug.

Bien cordialement

Re: Transtypage auto ?

Publié : mar. 20/sept./2022 19:32
par case
nice :)