Passage de paramètres dans une procédure [VBS] - VB/VBA/VBS - Programmation
Marsh Posté le 17-03-2005 à 15:37:11
Pas besoin de ByRef de toute manière, vu qu'un tableau est de type référence, et que tu ne l'assigne pas à un nouveau tableau...
[parenthèse : en VB, on ne met pas d'underscore dans les noms de variables et de procédures ]
Marsh Posté le 17-03-2005 à 15:44:14
Je mets des underscores si je veux
Oui bon je sais qu'il n'y a pas besoin de byref mais je l'ai rajouté pour être sûr que ça venait pas de çà
Marsh Posté le 17-03-2005 à 15:49:18
Non, tu ne mettera pas de underscore Le standard syntaxique veut que tu dois utiliser du PascalCase pour les variables et fonctions (genre VariablePouetTruc), et du camelCase pour les paramètre de fonction (genre paramDeTaFonction)
Marsh Posté le 17-03-2005 à 15:53:36
M'en fous c'est du scripting. Je serais même pas obligé de déclarer les variables
Mais pour la prochaines fois je virerai les underscore
C'est dur de se remettre dans le bain après 6 ans d'arrêt
J'ai l'impression d'être un lycéen en option initiation à l'info
Marsh Posté le 17-03-2005 à 15:57:25
Sinon, fait une fonction qui te retourne le tableau initialisé
Marsh Posté le 17-03-2005 à 16:00:44
Mouais j'y ai pensé mais bon je sais po comment ça va marcher.
Sinon pour le dimensionnement j'ai essayé de faire une constante TABSIZE, et ensuite Dim ArrTab(TABSIZE).
L'interpréteur a pas aimé
Marsh Posté le 17-03-2005 à 16:02:08
Ce qui est marrant, c'est quand je lance ton script, ça fonctionne
Marsh Posté le 17-03-2005 à 16:07:02
FlorentG a écrit : Ce qui est marrant, c'est quand je lance ton script, ça fonctionne |
Tu déconnes ?
Il affiche "1 est 1"
"2 est 1"
etc. ?
T'as quel interpréteur wsh ?
Marsh Posté le 17-03-2005 à 16:07:27
(ça me rassure je suis encore capable de pondre un truc aussi trivial )
Marsh Posté le 17-03-2005 à 16:09:01
Il affiche :
'est 1'
'est 2'
'est 3'
Ah ouais en fait ça bug
Marsh Posté le 17-03-2005 à 16:09:48
FlorentG a écrit : Il affiche : |
Roh punaise je suis pas prêt de débugguer la partie intéressante du script
Marsh Posté le 17-03-2005 à 16:22:35
TROUVééééééééééééé !
Modifie la ligne :
Tab_init(arr_tab) |
Par :
Tab_init arr_tab |
Ou :
Call Tab_init(arr_tab) |
Comme le dit la MSDN :
Citation : You are not required to use the Call keyword when calling a procedure. However, if you use the Call keyword to call a procedure that requires arguments, argumentlist must be enclosed in parentheses. If you omit the Call keyword, you also must omit the parentheses around argumentlist. |
Marsh Posté le 17-03-2005 à 16:25:42
Je vais pouvoir maintenant m'atteler à la partie intéressante du script.
Je poste dès que ça marche
Marsh Posté le 17-03-2005 à 16:29:41
Pour l'instant mon script a pour seule fonction d'occuper 100% de ressources processeur
Marsh Posté le 17-03-2005 à 16:44:25
Ayan il n'occupe plus les 100% de ressources proc.
Mais le fait est que mon algo est foireux à mon avis
Marsh Posté le 17-03-2005 à 15:34:34
Lo
D'après les docs vbs, le mode de passage par défaut des variables est le passage par référence. Pourtant le tableau de mon script ci-dessous n'a pas l'air de passer.
J'ai même indiqué dans ma procédure tab_init qu'il faut passer mon paramètre par référence mais rien n'y fait : valeur NULL dans mon tableau manifestement.
Par contre quand j'inclus le code de la procédure affiche_tab directement dans le tab_init là j'ai bien le bon résultat.
Je suis perplexe
Ca doit être tout bête ... Quelqu'un a une idée ?
Ci-dessous mon code (je n'y inclus que les parties remplissage et affiche du tableau, la partie opérationnelle du script ayant peu d'importance) :
---------------
Retraité de discussions