Pen^2 Le 01/12/2001 à 17:29 et pkoi pas switch-case/break?
[edit]Edité par Pen^2 le 01-12-2001 à 17:31:31[/edit]
il me semble que le when est le plus rapide!
ta ka décompiler er voir ce ke ca donne en machine.
sinon il parait ke le ? c un truc de parresseux et ke c pas bien a utiliser, vo mieu eviter.
niuob Le 01/12/2001 à 18:45 Moi perso j'aime bien l'utiliser dans les macro, et les define
Perso je préfère le "when" pour n'appeller qu'une seule fois un fonction dont les paramètres changent en fonction d'une variable, mais aussi par habitude du TI-basic(c'est le meilleur test à mon avis en TI-Basic)
L'opérateur <cond> ? <exprSiVrai> : <exprSiFaux> produira toujours un code plus rapide qu'une imbrication de if.
Pour ton cas le switch est bien plus indiqué, il produira (avec les bonnes options) un table de saut imbattable en vitesse (du moins à partrir d'un certain nombre de case, mais le compilo choisit comme un grand le cas le plus favorable (s'il y a peu de case le code produit sera équivalent à une suite de if imbriqués)).

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
Dans un source de TN, j'avais vu k'il avait écrit en commentaire k GCC optimizait bcp mieux en taille les structure if..else..end k le switch (donc mieux k le "when" aussi je suppose)
[edit]Edité par Aghnar le 01-12-2001 à 22:53:43[/edit]
En basic, vaut mieux utiliser le when, je suppose qu'en C, c'est pareil...

Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.
sous TIGCC, le switch prend généralement le plus de mem... mais je l'utilise souvent qd j'ai besoin de vitesse... J'aurai donc raison ?
Le when ou le if, je les utilises qd je veux optimiser en mémoire (les menus, par exemple)
Préfère "when" à if dans ce cas.

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
oué, dans 99% des cas, ça fait moins d'occupation mémoire...
Mais je me demande s'il faut faire pareil dans le moteur du jeu, ou si ça fait ramer..
Je reprend...
L'opérateur <cond> ? <exprSiVrai> : <exprSiFaux> produira toujours un code plus rapide qu'une imbrication de if.

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
-O2 minimum !
Comme tu le dis, le switch prend généralement le plus de mem. Eh bien parceque TIGCC génère une JumpTable !
(tu n'as pas raté le post 8 du topic ?)

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
Avec -O2 mon prog est p-ê plus gros, mais il est bcp + rapide !

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.