Initialisation tableau dans un constructeur

Résolu
cs_tontonzip Messages postés 6 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 17 avril 2005 - 27 mars 2005 à 20:21
ekinox17 Messages postés 66 Date d'inscription jeudi 6 octobre 2005 Statut Membre Dernière intervention 18 janvier 2006 - 27 oct. 2005 à 10:37
salut à tous,

J'ai un petit souci..

J'aimerai initialiser un tableau à 1 dimensions de type GLfloat dans un contructeur d'une
classe contenant plusieurs tableau (que je dois aussi initialiser en passant).

ça c'est ma classe:


class CCoordonnee


{


public:


CCoordonnee(
void);


~CCoordonnee(
void);


GLfloat TabConstructMaison[5];


GLfloat TAbConstrucImmeuble[250];


};

La mon contrusteur (qui marche):


CCoordonnee::CCoordonnee(
void)


{


TabConstructMaison[0]=20.0;


TabConstructMaison[1]=-20.0;


TabConstructMaison[2]=10.0;


TabConstructMaison[3]=10.0;


TabConstructMaison[4]=10.0;


}

ET la le constucteur que j'aimerais faire mais qui ne marche pas:


CCoordonnee::CCoordonnee(void)


{


TabConstructMaison[5]={20.0,-20.0,10.0,10.0,10.0};


}

Merci d'avance pour vos réponses.

Tonton zip
A voir également:

5 réponses

steve_clamage Messages postés 475 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 11 août 2006 5
27 mars 2005 à 21:36
C'est quoi ton compilateur ? (qui ne doit pas etre trés récent)



#include





class CCoordonnee

{



static const GLfloat _S_TabConstructMaison_init[5];



public:





CCoordonnee()

{

std::copy( _S_TabConstructMaison_init, _S_TabConstructMaison_init + 5, TabConstructMaison );

}







GLfloat TabConstructMaison[5];



GLfloat TAbConstrucImmeuble[250];



};



const GLfloat CCoordonnee::_S_TabConstructMaison_init[5] = {20.0,-20.0,10.0,10.0,10.0};
3
steve_clamage Messages postés 475 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 11 août 2006 5
27 mars 2005 à 20:34
Il faut que le tableau avec lequel tu initialise existe, ca peut etre un memebre statique de ta classe.



#include



class CCoordonnee

{

static const GLfloat _S_TabConstructMaison_init[5] = {20.0,-20.0,10.0,10.0,10.0};



public:





CCoordonnee()

{

std::copy( _S_TabConstructMaison_init, _S_TabConstructMaison_init + 5, TabConstructMaison );

}



GLfloat TabConstructMaison[5];

GLfloat TAbConstrucImmeuble[250];

};
0
cs_tontonzip Messages postés 6 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 17 avril 2005
27 mars 2005 à 21:07
Merci pour ta réponse.

Cependant j'ai toujours la même erreur à la ligne:

static const GLfloat _S_TabConstructMaison_init[5] = {20.0,-20.0,10.0,10.0,10.0};


error C2059: syntax error : '{'
0
cs_tontonzip Messages postés 6 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 17 avril 2005
27 mars 2005 à 22:06
Je fais du C++ sous Visual Studio .net.

C'est bon j'ai reussi!!! merci à toi et bonne fin de soirée.

Tonton zip
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ekinox17 Messages postés 66 Date d'inscription jeudi 6 octobre 2005 Statut Membre Dernière intervention 18 janvier 2006
27 oct. 2005 à 10:37
arf j'ai le me probleme que lui mais moi j'ai un probleme de link lors de l'initialisation avec std::copy

j'ai essayer *buffer = *static_buffer

mais nan il veut rien faire j'ai essayer buffer = static_buffer il me dit : cannot convert const BYTE[25] to BYTE[25]

plz donner moi une technique pour initialiser mon tableau
0
Rejoignez-nous