Qu'en pensez vous?? besoin d'aide!! lol

Résolu
cs_nelly77 Messages postés 6 Date d'inscription vendredi 27 mars 2009 Statut Membre Dernière intervention 26 novembre 2012 - 27 mars 2009 à 14:42
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 - 27 mars 2009 à 14:56
bonjour je voudrai créer un tableau avec une liste de produits ayant des attributs comme  leur nom, leur etat dans un stock, la duree de fabrication et le delai de livraison.
N'ayant pas trouver comment faire en c++ un tableau avec a la fois des mots et des chiffres, j'ai pensé à creer une classe produit avec tous ces attributs. sauf que la je suis bloqué puisque je compile et ca me dit que affiche n'est pas déclaré donc j'arrivepas à avancer.

besoin d'aide svp voici ce que j'ai fait:

#include
using namespace std;

class Cproduit
{
protected:

    char* nomProduit;
    int* etatStock;
    int* dureeFab;
    int* delaiLiv;

public:
    Cproduit(const char*nom, const int*etat,const int*duree,const int*delai);
    void setNom(const char*nom);
    void setEtat(const int*etat);
    void setDuree(const int*duree);
    void setDelai(const int*delai);
    void affiche();
};

Cproduit::Cproduit(const char*nom, const int*etat,const int*duree,const int*delai)

{

this->setNom(nomProduit);
this->setEtat(etatStock);
this->setDuree(dureeFab);
this->setDelai(delaiLiv);
}

void Cproduit::setNom(const char*nom)
{

    if(nom)
{
    this->nomProduit=new char[strlen(nom)];
    strcpy(this->nomProduit,nom);
}

    else
    nomProduit=NULL;
}

void Cproduit::setEtat(const int*etat)
{

    if(etat)
{
    this->etatStock;
}

    else this->etatStock=NULL;
}

void Cproduit::setDuree(const int*duree)
{

    if(duree)
{
    this->dureeFab;
}

    else this->dureeFab=NULL;
}

void Cproduit::setDelai(const int*delai)
{

    if(delai)
{
    this->delaiLiv
}

    else this->delaiLiv=NULL;
}

void Cproduit::affiche()

{
    cout<< "nomProduit:"<<this->nomProduit<<endl;
    cout<< "etatStock:"<<etatStock<<endl;
    cout<< "dureefab:"<<dureeFab<<endl;
    cout<< "delailiv:"<<delaiLiv<<endl;
}

int main(int argc,char*argv[])

{
affiche();
return 0;
}

merci d'avance!!!!!!!!!!!

1 réponse

BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
27 mars 2009 à 14:56
Hello,
Dans ton main, il te manque l'instanciation d'un objet de type Cproduit pour pouvoir utiliser la méthode affiche()

int main(..)
{
  Cproduit monProduit;
  /* ici, tu joues avec, tu le remplis, ...*/
  monProduit.affiche();
 ..
}

De plus, tu n'as sûrement pas besoin de stocker des pointeurs dans ta classe pour l'état, la durée, le délai,..

Jettes un coup d'œil sur des bouquins ou des tuto de programmation C++. Celui-ci est pas mal pour progresser

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
3
Rejoignez-nous