|
|
|
|
Bonjour,
Je dois écrire un programme où je dois créer un tableau de pointeurs contenant l'adresse d'objets d'une classe prédéfinie "client". La définition et la déclaration du tableau me pose problème:
// restaurant.h
#ifndef RESTAURANT_H
#define RESTAURANT_H
#include <string>
#include <ctime>
using namespace std;
class restaurant { public:
int N; //nombre de places du restaurant
int nombre; //nombre de clients présents
restaurant(int pl=0) : N(pl){};
void accepte(client &cl);
};
#endif
//restaurant.cpp
#include "client.h"
#include "restaurant.h"
#include <string.h>
#include <iostream>
using namespace std;
void restaurant::accepte(client &cl){
client **liste = new *client[N]; //????
client *p;
p=&cl;
if (nombre==N){
cout <<"il ne reste plus de place disponible dans ce restaurant"<< endl;
}
else { for( client * t = liste; t<liste+nombre; t++ ){
if (t==p){
cout <<"le client est déjà présent dans ce restaurant"<< endl;
}
else {
liste[nombre]=p;//?????
nombre++;
cout <<"le client est maitenant présent"<< endl;
}
}
}
delete [] liste;
}
//les erreurs:
Compilateur: Default compiler
Exécution de g++.exe...
g++.exe "C:\Users\Henri.PC-de-Anne\Desktop\Pro\restaurant.cpp" -o "nul" -I"C:\Dev-Cpp\lib\gcc\mingw32\3.4.2\include" -I"C:\Dev-Cpp\include\c++\3.4.2\backward" -I"C:\Dev-Cpp\include\c++\3.4.2\mingw32" -I"C:\Dev-Cpp\include\c++\3.4.2" -I"C:\Dev-Cpp\include" -I"C:\Users\Henri.PC-de-Anne\Desktop\Pro" -L"C:\Dev-Cpp\lib"
C:\Users\Henri.PC-de-Anne\Desktop\Pro\restaurant.cpp: In member function `void restaurant::accepte(client&)':
C:\Users\Henri.PC-de-Anne\Desktop\Pro\restaurant.cpp:10: error: expected identifier before '*' token
C:\Users\Henri.PC-de-Anne\Desktop\Pro\restaurant.cpp:10: error: expected `,' or `;' before "client"
C:\Users\Henri.PC-de-Anne\Desktop\Pro\restaurant.cpp:16: error: cannot convert `client**' to `client*' in initialization
C:\Users\Henri.PC-de-Anne\Desktop\Pro\restaurant.cpp:16: error: comparison between distinct pointer types `client*' and `client**' lacks a cast
Exécution terminée
Merci d'avance pour vos réponses
Configuration: Windows Vista Firefox 2.0.0.11 dev c++
Salut,
|