Bonjour,
j'ai remarqué que si je crée le type
et que je lance la boucle suivante en mode debug
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 TValeurPossible=(E0=$00000000 E1=$00000001, E2=$00000002, E8=$00000008, E64=$00000040, E128=$00000080); TValeurs = set of TValeurPossible;
je parcoure 129fois ma boucle avant de la quitter.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 function TCan.WaitForState(EtatsVoulu:TValeurs):TValeurs; var LocalState:LongWord; MesEtatsVoulu: TValeurPossible; begin for MesEtatsVoulu in EtatVoulu do begin LocalState:=LocalState or ord(MesEtatsVoulu); end; blablabla
Est ce que une boucle for in n'est pas censé parcourir uniquement mes etats possible (E0,E1,E2,E8,E64 et E128) ?
Lorsque je lance mon debug j'obtient ceci
En d'autre terme, est ce que tous les phases horslimite sont vraiment parcouru par l'ordinateur ? Est ce que je gagne en temps à utilisé cette boucle ?E0
E1
E2
Horslimite (3)
...
Horslimite(7)
E8
Horslimite(9)
...
Horslimite(63)
E64
Horslimite(65)
...
Horslimite(127)
E128
Je quitte ma boucle.
Merci
Partager