Y a-t-il une différence réelle de performance? Est-ce plus rapide? (disons que je l'utilise dans au moins 100 cas dans le même programme, cela améliorerait-il mon programme en termes de vitesse?)Y a-t-il une raison d'utiliser (nr & 1 == 0) sur (nr% 2 == 0) pour vérifier la parité?
Répondre
Cette question pourrait être plus appropriée sur Software Engineering Stack Exchange.
Si vous utilisez un compilateur d'optimisation, il est probable que toute forme de n % <power of two>
sera optimisée à n & <power of two minus one>
de toute façon, car ils sont équivalents, mais sur presque toutes les architectures, je peux penser à ce dernier est beaucoup plus efficace.
L'ancienne forme exprime votre intention plus clairement, bien que beaucoup de développeurs reconnaissent n & 1
comme une "version plus rapide" de n % 2
.
Je ne connaissais pas "Software Stack Exchange", désolé d'avoir posté dans la mauvaise zone, et merci pour les answear! –
vous pourriez créer un test de performance :) –
N'est-il toujours positif? – apandit
@apandit Il peut avoir n'importe quel signe. –