Faire référence à une variable

Signaler
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011
-
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011
-
Bonjour,

Je n'arrive pas à faire un truc tout simple... J'utilise probablement pas le bon vocabulaire dans mes recherches.

J'ai des valeurs stockées dans des variables qui changent au cours de l'éxecution.
J'aimerai déclarer un tableau dans lequel on retrouverai certaines valeurs qui sont stokées dans les variables décrites précédement.
Seulement quand j'utilise ce fameux tableau, j'aimerai que les valeurs qu'il contient soit mis à jour automatiquement. Un peu comme si dans mon tableau je ne mettais pas des valeurs mais plutot une sorte de référence aux valeurs stokées dans mes variables du début.

J'espère que c'est assez clair
Si ça l'est pas demandez moi plus de précision.

Merci pour votre aide !

15 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
80
Salut
Bah c'est dommage de te demander des précisions, tu devrais les fournir dès le début, tu feras gagner du temps à tout le monde.
Peut-être qu'un exemple de valeurs stockées permettrait de se rendre compte de ce que tu veux faire.

"J'ai des valeurs stockées dans des variables qui changent au cours de l'éxecution" : Ce sont les valeurs contenues ou les variables qui changent ?

"J'aimerai déclarer un tableau dans lequel on retrouverai (...) les variables décrites précédement." : Tu as décrit quelque chose ?

"Seulement quand j'utilise ce fameux tableau" : Quel tableau ? Qu'as-tu fait ?

"j'aimerai que les valeurs qu'il contient soit mis à jour automatiquement" : Rien n'est jamais automatique

"Un peu comme si dans mon tableau je ne mettais pas des valeurs mais plutot une sorte de référence" : Et la marmotte ?

Eh beh, il est tard, je sais, mais quand même.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
89
Date d'inscription
vendredi 16 mars 2007
Statut
Membre
Dernière intervention
23 février 2010

Salut,
C'est vrai que c'est pas très très clair, mais si j'ai compris, tu peux essayer ceci...

Au lieu d'une affectation directe à la variable,
Tu peux appeller une Procédure (utilisant des paramètres) qui affectera la nouvelle valeur à ta variable et qui mettra à jour ton tableau.
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011

Ok
Bon, si j'ai pas mis plus de précision c'est que c'était clair dans ma petite tête...

Concrétement j'essai de faire un mailleur 2D. Donc j'ai une liste de noeuds déclaré comme suit:

Public Class Noeud
Public Prop1 as single
Public Prop2 as single
...
End Class


Public ListeNoeuds as List(Of Noeud)


Ensuite pour executer des calculs sur mon maillage, j'ai besoin de retrouver les valeurs des Prop1, Prop2, etc de certains noeuds de la contenus dans ListeNoeuds dans un tableau Tab (ou une matrice pour prendre le therme mathématique exact).


Public Tab as single (,)


Donc j'ai un tableau à 2 dimension
Dans la première je met Prop1, dans la seconde je met Prop2 de certains noeud.

Seulement à chaque itération de calcul (c'est à dire que le maillage est calculer plusieurs fois) les valeurs de Prop1, Prop2, etc de chaque noeud sont modifiées à l'issus du calcul de l'itération précédente.
Et j'aimerai que mon tableau (qui contient certaines valeurs de Prop1, Prop2 etc de certains noeuds) soit mis à jour tout seul. J'ai pas envi, à chaque itération, de réecire le tableau.
En fait je pense que c'est juste une manière de déclarer les valeurs contenues dans mon tableau, mais je sèche.


En espèrant que ce soit plus clair.
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
10
Bonjour à tous,

Je ne veux pas me mêler de vos petites affaires, alors juste en passant, pingouin84k, il me semble que ta demande se résume à une utilisation des plus normale d'un tableau... Finalement, on va tous se demander où est ta difficulté ? (car au premier post, c'était l'usine à gaz!) Sais-tu utiliser un Tableau ?

Amicalement,
Us.
Messages postés
89
Date d'inscription
vendredi 16 mars 2007
Statut
Membre
Dernière intervention
23 février 2010

Ton tableau doit contenir des pointeurs vers tes pro1, prop2, etc... et non pas leur valeur propre... enfin, je pense, car moi, je ne sais vraiment pas bien utiliser les tableaux.
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011

Ha un tableau fait ça tout seul ?! J'avais jamais remarqué. Donc apriori je dirai que non je sais pas me servir d'un tableau. Si tu as des explications je suis prenneur. C'est l'inconvénient que d'voir appris à coder sur le tas
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011

Des pointeurs ?! Lol C quoi cette bête là. On utilise ça comment ?
Messages postés
89
Date d'inscription
vendredi 16 mars 2007
Statut
Membre
Dernière intervention
23 février 2010

Les tableaux et les pointeurs sont mes betes noires (entre autres).
Mais je crois bien qu'un pointeur sur une variable te renvoie à la variable elle meme. Donc si ta variable a changé de valeur, ça te renverra sa valeur actuelle.
Mais ceci dit, j'aimerais bien que quelqu'un qui connaisse bien les pointeurs vienne confirmé ça car je ne voudrais pas d'induire en erreur.
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011

Ben justement c'est ce que je veux. Si la variable a changé de vleur est que ca me renvoie la valeur actuelle c'est exactement ce que je veux faire.
On dirai qu'on a trouvé une explication simple à ce que je veux faire ^^ lol
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011

Bon apriori, les pointeurs en .net faut pas y compter.
Sinon j'ai essayer de déclarer un tableau

Dim Tab() as single
Redim Tab(3)

Dim Val1 = 1
Dim Val2 = 2
Dim Val3 = 3

Tab(0) = Val1
Tab(1) = Val2
Tab(2) = Val3

Val1 = 7
Val2 = 5
Val3 = 8
msgbox Tab(0) & Tab(1) & Tab(2)



ça m'affiche 123 (les valeurs initiales) et pas 758 comme j'aimerai...


Même en utlisant Tab.SetValue ça change rien.
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
10
Sur un exemple aussi basique, difficile de donner une explication simple. Je pense que ta difficulté vient de la façon dont tu organises ton code. Mais pour faire simple, il me semble que tu envisages un Tableau comme un Stockage uniquement... en ignorant le fait, et c'est peut-être là ta difficulté (du moins je crois), qu'un tableau est aussi une variable !

Ainsi, ton exemple, même si trop basique pour mettre en relief une structure, serait ainsi :

Dim Tab() as single
Redim Tab(3)

Tab(0) = 1
Tab(1) = 2
Tab(2) = 3

Tab(0) = 7
Tab(1) = 5
Tab(2) = 8

msgbox Tab(0) & Tab(1) & Tab(2)


Ici, c'est trop trivial! En général, on inclut Tab(0), Tab(1)... dans une boucle... Plus schématiquement donc :

Redim Tab(4)

For t=0 to 2
Variable = 10-t+Tab(t+1) 'formule de calcul ou autre...
Tab(t) = Variable
next t

msgbox Tab(0) & Tab(1) & Tab(2)

/code

Donc "Variable" est ici la donnée qui résulte d'un calcul, ou d'une lecture de qlq chose... enfin selon ton projet... là, on n'en sait pas plus, c'est à toi de voir...

Amicalement,
Us.
Messages postés
89
Date d'inscription
vendredi 16 mars 2007
Statut
Membre
Dernière intervention
23 février 2010

Peut-etre qu'il y a ta solution ici
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011

Oui j'ai toujours utilisé le tableau comme une variable.
C'est toi us_30 qui à la page précédente me disai que ce que je voulais faire ressemblait à un tableau tout simplement...
Donc j'ai essayer de faire ça tout simplement avec un tableau, mais comme tu vois ça marche pas. L'exemple que j'ai posté illustre bien ce que je veux faire. Apparemment il n'y a pas de solution à ce que je veux faire.
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
10
Mon dieu... j'abandonne à expliquer la simplicité... c'est trop dur!

Amicalement,
Us.
Messages postés
68
Date d'inscription
vendredi 28 octobre 2005
Statut
Membre
Dernière intervention
9 janvier 2011

Mon dieu... merci pour ton aide...

Souviens toi quand même que "ce qui se conçoit bien s'énonce clairement - et les mots pour le dire arrivent aisément."