Je demande plus pour ma compréhension que pour une optimisation plus ou moins utilie.
Pour l’instant on est d’accord que faire x*x évite d’appeler la fonction pow() donc on gagne du temps. A partir de puissance3, ça devient long à écrire et à relire, l’utilisation de pow se justifie j’imagine.
Question:
Que se passe t’il si on a A+B à élever au carré?
Dans ce cas, pow(A+B,2) devient logiquement plus interessant que (A+B)*(A+B) qui demande 2 fois le même calcul.
Je me suis dit, y a qu’à faire
tmp = A+B;
tmp *= tmp;
Dans le cas de gros calculs scientifiques, je me retrouve parfois avec plusieurs variables temporaires. C’est galère et pas très lisible.
En faisant des recherches, j’ai lu une histoire d’optimisation lors de la compilation. Le compilateur rajouterait lui même cette vriable temporaire?
Si c’est le cas, pas besoin de variable temporaires à la main? Il suffit de balancer les expressions en pâtés sans s’inquièter des doublons de calculs?
Qu’en est’il des langages interprétés matlab ou même bash?