Class....

Signaler
Messages postés
19
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
1 avril 2004
-
Messages postés
19
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
1 avril 2004
-
voila j'ai un petit prob lors de ma compilation et j'ai un test dessus lundi :

#include "conio.h"
#include "iostream.h"

class C_Tableau
{
private:
int *L_Tableau;
int nbmax;

public:
C_Tableau();
~C_Tableau();
void Ecrire();
void Affiche();
};

C_Tableau::C_Tableau()
{
cout<< "entrer la taille:";
cin>>nbmax;

L_Tableau = new int [nbmax];

int L_Index;
for(L_Index = 0;L_Index < nbmax; L_Index++){
L_Tableau[L_Index] = 0;
}

}

C_Tableau::~C_Tableau()
{
delete L_Tableau;
}

void C_Tableau::Ecrire()
{
int L_Valeur_Case;
int L_Valeur_Index;

cout<<"entrer les valeurs:"<<endl;

for(L_Valeur_Index = 0; L_Valeur_Index < nbmax; L_Valeur_Index++)
{
cout<<"case: "<<L_Valeur_Index<<endl;
cin>>L_Valeur_Case;
L_Tableau[L_Valeur_Index] = L_Valeur_Case;
}

}

void C_Tableau::Affiche()
{
int L_Index;
cout<<"Voici les valeurs du tableau:"<<endl;

for(L_Index = 0; L_Index < nbmax; L_Index++){
cout<<L_Tableau[L_Index];
}
getch();
}

void main()
{

C_Tableau Tableau();

Tableau.Ecrire(); <- premiere erreur
Tableau.Affiche(); <- deuxieme erreur
}

[C++ Erreur] U_TP1exo1_objet.cpp(69): E2294 Structure nécessaire sur le côté gauche de . ou .*
[C++ Erreur] U_TP1exo1_objet.cpp(70): E2294 Structure nécessaire sur le côté gauche de . ou .*

Merki bcp

2 réponses

Messages postés
17
Date d'inscription
samedi 11 octobre 2003
Statut
Membre
Dernière intervention
29 décembre 2003

Dans ton destructeur met: delete [] L_Tableau; car L_Tableau est un tableau de int.

C_Tableau Tableau; // le constructeur par defaut est appelé automatiquement, le reste est 'ok'.

Dans ton constructeur, vérifie que le nombre entré(contenue dans 'nbmax') est valide. Même chose pour ta fonction Ecrire(), vérifie que les valeurs entrées sont valide.

Dernière petite chose, pour permettre de bien différencier les headers 'standard' contenue dans le répertoire 'include\*' et tes propres header, la syntax suivante est de mise:

#include
#include <conio.h>
#include "ton_header.h"
#include "ton_autre_header.h"
#include <string.h>
// etc ...

*%*%*%*%*%*%*%
%
* vObjects
%
*%*%*%*%*%*%*%
Messages postés
19
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
1 avril 2004

ouep en faite j'ai trouvé lol la connerie simple mais ke bobo t'en donne un message d'erreur de ouf en fait dans mon main je declare: C_Tableau Tableau();
Ben non ya pas de parenthese c'est une variable :big)
Merci de ta reponse