J'ai créé deux structures différentes dans un programme. J'ai maintenant une structure avec des structures imbriquées mais je ne peux pas trouver comment les initialiser correctement. Les structures sont énumérées ci-dessous. Je tente ensuite d'initialiser un nouveau joueur appelé struct struct.Comment initialiser des structures imbriquées en C++?
//Creates player, usings vectors copy and iterator constructors
Player player = {
vector<float>(xcords,xcords + (sizeof(xcords)/sizeof(float))), //xcords of player
vector<float>(ycords,ycords + (sizeof(ycords)/sizeof(float))), //ycoords of playe
box.ymax = 5; //create bounding box
box.ymin = 1;
box.xmax = 5;
box.xmin = 1;
1,1,1, //red, green, blue
0.0f,0.0f, //r_leg,l_leg
{4,4,4}, //number points per polygon
true,false}; //up, down
Cela provoque plusieurs erreurs différentes, concernant la boîte. L'affichage de la boîte n'a pas d'identificateur clair et de struct ou syntaxe manquante avant '.'.
J'ai ensuite essayé simplement de créer une struct du joueur et initialisez ses membres comme suit:
Player bob;
bob.r_leg = 1;
Mais cela provoque plus d'erreurs, comme le compilateur pense bob n'a aucun identifiant ou manquant une syntaxe.
Je ai googlé le problème, mais je n'ai trouvé aucun article me montrant comment initaliser de nombreux membres différents des structures imbriquées dans la structure (parent). Toute aide sur ce sujet serait grandement appréciée :-) !!!
Je réalise cet extrait a déjà des problèmes que les magasins de boîte englobantes points ainsi besoin ymax.x et ymax.y besoin initalising . Cependant j'ai essayé mais j'ai eu les mêmes erreurs. (c'est-à-dire que j'ai fait ymax.y = 5; ymax.x = 1; etc etc.) – binarycreations
veuillez joindre les erreurs. –
Vous devez les initialiser dans les constructeurs de toute façon. Vous ne voulez pas de valeurs indéfinies. –