Coucou,
déjà merci pour votre aide. Alors j'ai pas tout à fait compris comment supprimer les warning mais voici ce que j'ai fait pour le moment :
boutique.h :
class Commande{
public:
// À compléter
Commande();
Commande(const Commande& );
~Commande();
void ajouter(string, int);
private:
// À compléter
ArbreMap<string,int> commandes;
friend istream& operator>>(istream& is, Commande& c);
};
et
boutique.c:
Commande::Commande()
{
}
Commande::Commande(const Commande& c)
{
commandes = c.commandes;
}
void Commande::ajouter(string nomproduit,int quantite){
commandes[nomproduit]=quantite;
}
Commande::~Commande()
{
commandes.vider();
}
istream& operator>>(istream& is, Commande& c){
string nomproduit;
is >> nomproduit;
while(is && nomproduit!=";"){
int quantite;
is >> quantite;
c.ajouter(nomproduit,quantite);
is >> nomproduit;
}
return is;
}
Du coup j'ai laissé le constructeur vide sans code parce que dans le .h j'initialise déjà un arbre vide au nom commande donc je suppose que je n'ai pas besoin d'en faire plus de ce coté là?
J'ai mis la fonction ajouter qui prend les paramètres passés et ajoute un couple clé/valeur à mon arbre
et donc je l'appel dans ma surcharge d'opérateur.
donc a priori quand on a par exemple la ligne :
entree >> c;
ça va ajouter une liste de produits à ma commande c si je dis pas de betises. Du coup je crois que de ce coté je n'ai pas besoin d'une autre fonction.
Du coté de boutique j'ai un peu de mal a mapper son inventaire.
il est de la forme :
ArbreMap<ArbreMap<string,int>,Date> inventaire; // arbre [nom, quantite, peremption] inventaire
Du coup vu que pour mapper un arbre je fais :
arbre[clé]=valeur;
logiquement
arbre[[clé]=valeur]=valeur; // devrait etre la ligne pour mapper mon nouvelle arbre mais ça me parait pas du tout correct
@refeuh habituellement je nomme mes parametres mais vu que dans le code du prof ils ne sont pas nommés j'ai préféré ne pas le faire vu qu'on nous demande d'adapter notre code pour qu'i lressemble au code existant mais je retient ton conseil, pour ton deuxieme conseil ej vais faire une petite recherche parce que je n'ai appris que le constructeur et le constructeur par copie
Bonne journée à vous
edit: je crois que je vais essayer de me créer un petit programme pour m'aider pour ce tp, si quelqu'un a une petite idée d'un programme simple qui va me faire utiliser l'arbreMap je veux bien ça m'aidera à y voir plus clair très certainement