Garanties sur l'alignement
Salut,
Je sais que pour le moment, la manière dont les membres d'une structures sont alignées en C++ est implementation-defined.
Mais j'ai parfois vu que le moteur 3D Irrlicht faisait du code comme ça :
Code:
1 2 3 4 5 6 7 8 9 10
| struct vector3
{
float x;
float y;
float z;
float const* get() const {
return &x;
}
}; |
Pour que leur vecteur 3D puisse à la fois être représenté comme un couple de flottants ou comme un tableau C (un avantage parfois, pour de la concision).
Je me demande si la contiguité est ici garantie, vu qu'on a bien 3 membres consécutifs de même type ?
Merci d'avance