Bonjour,
j'ai une erreur sur ce code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 task type Courroie_type is procedure incrementePosition(Numero: Natural); procedure changementTapis; procedure changementTapisGauche; procedure changementTapisDroit; procedure affiche(S : String); -- ajoute une lettre dans la pile function AjouteLettre(NvelleLettre : Lettre_Access) return boolean; -- met le commutateur dans la bonne position procedure CommandCommutateur (Gauche :boolean); entry Init(Ident: Natural); end Courroie_type;ca veut dire que je n'ai pas le droit de mettre des procedures dans un task ?illegal declaration in task definition
Si c'est le cas comment je peux faire pour avoir des procedures propres a chaque task ? parce que ces procedures utilisent des variables propres au task, par exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 task body Courroie_type is Id: Natural; Vitesse:Float := 1/float(MinVitesse); LongueurTapis :Natural := 10; -- le commutateur dirige une lettre sur la courroie de gauche CommutateurVersGauche :boolean :=true; TabLettre: array(0..MaxTabLettre) of Lettre_Access; PremiereLettre :T_Pile := 0; DerniereLettre :T_Pile := 0; procedure incrementePosition( Numero: Natural) is begin TabLettre(Numero).Position := TabLettre(Numero).Position + 1; end incrementePosition; ...
Partager