Bonjour à tous,
J'ai une question sur le fonctionnement des tableaux de données en C++:
j'ai une structure facecolor définie comme ca:
et une classe color dont voici le prototype:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 typedef struct FaceColor { Color color[3]; } FaceColor;
Dans une autre classe de type object3D, Je fais un tableau de faceColor:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 class Color { public: float r; float g; float b; Color(); Color(float r, float g, float b); Color(const Color& color); virtual ~Color(); void set(float r, float g, float b); Color operator=(const Color& color); Color operator*(const float x); Color operator+(const Color& color); };
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 faces = new FaceColor[nbFaces];
Pour des besoins de mon programme, j'ai besoin d'envoyer un tableau de float de toutes mes valeurs r,g,b à la suite pour toutes les faces de mon objet. cet envoi se fait en specifiant a la fonction l'adresse du premier element et la taille du tableau.
Est ce que j'ai besoin de reorganiser mes données, ou est ce que si j'envoie comme premier element faces[0].r et comme longueur de tableau 3*3*nbFaces, ca va le faire?
En d'autres termes, est ce que j'ai l'assurance que dans mon cas d'un tableau de tableaux de floats, tous les floats sont rangés dans l'ordre "naturel", avec rien au milieu qui vient faire polluer mon code?
Merci
Z.
Partager