Gambas France BETA


Pas de compte ? Incription

tableaux incorporés

Ce sujet est résolu.

1
AuteurMessages
jibi#1 Posté le 17/1/2024 à 08:51:24
codergambas.jimdofree.comRE,

qu'est ce que un tableau incorporé ?


Je viens de convertir un prog GB2 en GB3 et maintenant il y a une erreur "les tableaux incorporés sont interdits !

JL


EDIT :
A priori for each in tableau n'est pas accepté, j'ai remplacé par for i = 0 to , et plus d'erreur tableau incorporé interdit !!!!?
Debian GNU/Linux 11 64-bit

vuott#2 Posté le 17/1/2024 à 12:44:11
Ne cedere ineluctabili possimusJe vous propose ces liens:
- http://gambaswiki.org/wiki/def/embeddedarray?l=fr
- https://lists.gambas-basic.org/pipermail/user/2010-November/031294.html
- https://lists.gambas-basic.org/pipermail/user/2012-May/038643.html
- https://gambas-buch.de/dwen/doku.php?id=k7:k7.4:k7.4.6:start
- https://www.gambas-it.org/wiki/index.php/Array_annidati
« Vita non suavis esse potest, nec Mors amara. »
jibi#3 Posté le 17/1/2024 à 12:53:50
codergambas.jimdofree.comMerci

J'ai résolu le problème en changeant la boucle

for each
Next

par la boucle

for i = to
Next

Et là plus de soucis de tableaux incorporés !
Debian GNU/Linux 11 64-bit

vuott#4 Posté le 17/1/2024 à 14:30:38
Ne cedere ineluctabili possimusCela fonctionne plutôt pour moi: :|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
PRIVATE bb[2] AS INTEGER


PUBLIC SUB Main()

bb[0] = 10
bb[1] = 20

FOR EACH b AS BYTE IN bb
PRINT b
NEXT


END
« Vita non suavis esse potest, nec Mors amara. »
spheris#5 Posté le 19/1/2024 à 01:02:24
Jibi,
Ton problème ne vient pas du tableau incorporé, mais plutôt du module de conversion de GB2 vers GB3.
J'ai plein de programmes que je n'arrive absolument plus à convertir sur la 3.18 avec des erreurs incompréhensibles.
La plus fréquente est celle du composant non trouvé ou obsolète.

Pour ton cas, si tu as résolu le problème, c'est parfait!
Comme tu peux le voir dans l'exemple de vuott, il a déclaré une variable de type BYTE directement dans la boucle FOR EACH, ce qui n'était pas possible en GB2.
Il fallait d'abord déclarer la variable par un DIM b as Byte, puis ensuite faire une boucle FOR EACH.

On appelle ça de l'évolution informatique, ça se résume tout simplement :
Au plus cela évolue, au moins cela fonctionne!
:lol: 8) :lol!:
1