mercredi 21 avril 2021

Short string optimisation - Comment l'observer ?

Alors, on l'a, ou on l'a pas ? Si vous avez un compilo récent sur un système d'exploitation raisonable, la SSO, vous l'avez. Si vous avez un compilo pas si récent sur un système d'exploitation trop raisonable (Red Hat, je te regarde, la compatibilité, c'est bien, mais je veux mon SSO !), alors vous ne l'avez pas. Mais comment être sûr ? Eh bien, logiquement, si vous avez la SSO, cela veut dire que la capacité de votre chaîne est strictement supérieure à zéro, même si elle vient d'être créée vide. Alors, essayons !

#include <string>
#include <iostream>


int main()
{
  std::cout << std::string().capacity() << std::endl;
  return 0;
}

On compile, on exécute, et chez moi ça donne 15. Yeah !

Aucun commentaire: