Venant d'un environnement Java, PHP, j'essaie d'entrer dans C++. Je voudrais stocker un tableau dans une structure. Mon problème est de spécifier la taille du tableau après l'initialisation de la structure.Tableau dans Struct, pointeurs [C++ Débutant]
Voici mon code pour le struct:
struct SpriteAnimation {
// ...
int parts; // total number of animation-parts
unsigned int textures[]; // array to store all animation-parts
// ...
};
Et ici pour la fonction principale:
SpriteAnimation bg_anim;
bg_anim.parts = 3;
unsigned int *myarray = new unsigned int[bg_anim.parts];
bg_anim.textures = myarray;
Que dois-je changer pour résoudre ce problème?
Est-il correct de l'utiliser ensuite avec 'bg_anim.textures = new unsigned int [bg_anim.parts];'? – Ben
Que se passe-t-il lorsque vous copiez votre structure? Que se passe-t-il quand il y a une exception? –
@Ben oui cela fonctionne correctement, en fait ce n'était pas correct avant, car la texture est un tableau alloué dynamiquement et devrait être montré comme un pointeur. Vous devez rechercher des classes si vous souhaitez utiliser C++ lorsque vous utilisez la syntaxe de style c. Rappelez-vous également de supprimer [] le tableau à la fin – Will03uk