[v4 beta 10] Listes et Tableaux [Impossible]

Archive.
LeCyb
Messages : 273
Inscription : dim. 26/déc./2004 20:49

[v4 beta 10] Listes et Tableaux [Impossible]

Message par LeCyb »

Je ne sais pas si c'est une "feature" mais quand on passe une liste ou un tableau en paramètre dans une procédure c'est un passage par adresse qui est effectué.
En d'autres termes si l'on modifie la liste dans la procédure elle restera modifiée hors de la procédure.

Ne serait-ce pas mieux de faire un passage par valeur afin d'homogénéiser (je fais un carton au scrabble avec ça :D) la chose comme pour le Global ?
Dernière modification par LeCyb le dim. 16/avr./2006 13:44, modifié 3 fois.
Vive le thread-safe !
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Message par djes »

T'as sûrement raison mais ça va être plus lent :( puisqu'il faudra recopier toutes les valeurs. T'imagines sur un gros tableau de 500Mo? !
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Au contraire, tu devrais plutôt le dupliquer manuellement ton tableau !

Dri
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Je n'arrive pas à passer en paramètre un tableau, y a un truc ou quoi! :oops:
LeCyb
Messages : 273
Inscription : dim. 26/déc./2004 20:49

Message par LeCyb »

Y'a un exemple dans le readme, tu dois passer le tableau en indiquant sa dimension:

Code : Tout sélectionner

Dim tableau.l(10,10)

tableau(1,1) = 5

Procedure passage(tab.l(2)) ;<-- ici on indique 2 pour dire que c'est 2 dimensions
  Debug tab(1,1)
EndProcedure

passage(tableau())
tableau(10) -> tab(1)
tableau(10,10) -> tab(2)
tableau(10,10,10) -> tab(3)
Vive le thread-safe !
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Merci, je croyais que c'était le nombre de valeurs qu'on voulait passer ou un truc du genre!

:)
LeCyb
Messages : 273
Inscription : dim. 26/déc./2004 20:49

Message par LeCyb »

Je remonte :)
Vive le thread-safe !
Fred
Site Admin
Messages : 2808
Inscription : mer. 21/janv./2004 11:03

Message par Fred »

C'est pas un bug, si tu veux modifier le tableau, crées en un en local et recopie toutes les valeurs.. Si on faisait ca par défaut, ce serait inutilisable (trop lent).
LeCyb
Messages : 273
Inscription : dim. 26/déc./2004 20:49

Message par LeCyb »

Ok, donc c'est une feature :)
Vive le thread-safe !
Répondre