Améliorer les performances d'Atoi ()
Suivant les conseils d'Andrei AlexandreScu dans sa conférence "Écriture de code rapide" sur le code :: Dive 2015 Conférence J'essaie de fournir un équivalent plus rapide pour atoi () mais maximiser la compatibilité arrière.
Vous avez un code hérité en utilisant atoI () où vous souhaitez améliorer les performances d'analyse de chaîne. Il serait très facile de créer une string spécialisée-> int d'analyse de l'analyse si le format de l'entrée était garanti, par exemple chaque numéro n'était pas signé et exactement quatre chiffres de long. Cependant, il y a des cas où les chaînes envoyées à atoi () proviennent d'un client externe afin que vous ne puissiez pas supposer facilement que les cordes n'ont pas d'espace de démarrage ou incluent des caractères non numeriques à la fin.
La fonction atoi () fait ce qui suit:
Voici les résultats pour une configuration particulière d'options système / compilateur / compilateur (optimisation complète).
CPU CHART:
Tableau de temps écoulé:
Référence C ++