Non, là tu montres que ta structure change en taille justement pour respecter l'alignement. Tu gagnes un peu en mémoire (4 octets par item, c'est à dire quasi rien, à moins d'avoir beaucoup d'items, mais alors vraiment beaucoup), mais les perfs vont être identiques. Le compilo a donc bien fait son boulot, et ça n'est absolument pas le genre de chose dont un développeur devrait avoir à se préoccuper.
Par ailleurs, je pense qu'à un certain niveau d'optimisation il doit pouvoir réordonner les membres lui-même, mais ça peut être source de jolis bug si tu ne compiles pas tout avec le meme niveau d'optim. En pratique c'est même le genre d'optimisation que je ne voudrais pas faire : gain négligeable au runtime, énormes pertes de temps potentielles au dév.
[^] # Re: alignement des données
Posté par Guillaume Laurent . En réponse à la dépêche Ces "nouveaux" gestionnaires de fenêtres. Évalué à 1.
Par ailleurs, je pense qu'à un certain niveau d'optimisation il doit pouvoir réordonner les membres lui-même, mais ça peut être source de jolis bug si tu ne compiles pas tout avec le meme niveau d'optim. En pratique c'est même le genre d'optimisation que je ne voudrais pas faire : gain négligeable au runtime, énormes pertes de temps potentielles au dév.