OVH Cloud OVH Cloud

[urgent] Tableau d'objet

3 réponses
Avatar
Eric CHOQUET
bonjour,

j'ai une classe cTache, ainsi qu'un tableau ConteneurTaches de cTache.

chaque cTache est ajoutée au conteneur à sa création.

Lors d'un traitement interne à cTache, un membre est modifié. si je
reparcours mon conteneur et que j'affiche le membre en question, celui-ci
n'est pas modifié. comment cela se fait-il ?

j'espere avoir été assez clair. si quelqu'un pouvait m'aider !

Par avance merci,
Eric

3 réponses

Avatar
Eric CHOQUET
****** ceci est ma classe cTache ****
CTache
m_Etat est un entier

Constructeur
:m_Etat = 0

Executer
:m_Etat = 1

GetEtat
renvoyer :m_Etat


****** initialisation du projet ****
tabConteneurTaches est un tableau de 0 cTache

****** bouton 1 (creation de 5 taches et insertiondans le tableau)******
MaTache est un objet dynamique cTache

pour i=1 à 5
MaTache = allouer une cTache()
tableauAjoute (tabConteneurTaches ,MaTache)
fin

***** bouton 2 (démarrage de toutes les taches du conteneur etat=1) *******
MaTache est un objet dynamique cTache

pour tout element MaTache de tabConteneurTaches
MaTache:Executer()
fin


****** bouton 3 (afiichage de l'etat de toutes les taches du conteneur) ***
MaTache est un objet dynamique cTache

pour tout element MaTache de tabConteneurTaches
info(MaTache:getEtat())
fin

Les etats sont toujours à 0 !!!
Avatar
patrice
"Eric CHOQUET" a écrit dans le message de
news:45781d00$0$27414$
***** bouton 2 (démarrage de toutes les taches du conteneur etat=1)


*******
MaTache est un objet dynamique cTache

pour tout element MaTache de tabConteneurTaches
MaTache:Executer()
fin




attention : si pourtout matache de tab

=> pour j=1 a tableauoccurence(tab)
matache=tab[j]

alors c'est normal
Avatar
Antoine
Tu utilises une boucle "POUR TOUT" qui fait donc une RECOPIE de l'élément
courant du tableau dans MaTache.

Il te faut faire:
POUR i=1 A Dimension(tabConteneurTaches)
tabConteneurTaches[i]:Executer()
FIN

Antoine


"Eric CHOQUET" a écrit dans le message de news:
45781d00$0$27414$
****** ceci est ma classe cTache ****
CTache
m_Etat est un entier

Constructeur
:m_Etat = 0

Executer
:m_Etat = 1

GetEtat
renvoyer :m_Etat


****** initialisation du projet ****
tabConteneurTaches est un tableau de 0 cTache

****** bouton 1 (creation de 5 taches et insertiondans le tableau)******
MaTache est un objet dynamique cTache

pour i=1 à 5
MaTache = allouer une cTache()
tableauAjoute (tabConteneurTaches ,MaTache)
fin

***** bouton 2 (démarrage de toutes les taches du conteneur etat=1)
*******
MaTache est un objet dynamique cTache

pour tout element MaTache de tabConteneurTaches
MaTache:Executer()
fin


****** bouton 3 (afiichage de l'etat de toutes les taches du conteneur)
***
MaTache est un objet dynamique cTache

pour tout element MaTache de tabConteneurTaches
info(MaTache:getEtat())
fin

Les etats sont toujours à 0 !!!