|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : probleme sur une classe [ Archives / Divers ] (NerOcrO)
Informations & options pour cette discussion
|
samedi 27 avril 2002 à 21:02:45 |
probleme sur une classe

NerOcrO
|
Voici mon code : #include <iostream.h> #include <string.h> class Chanson //classe Chanson { public: int Duree; char TypeDeFichier[3], Auteur[50], Titre[50], Interprete[50]; public: Chanson (int*, char*, char*, char*, char*); //Constructeur ~Chanson (void); //Destructeur void Afficher (); }; void main (void) { int Duree1; char TypeDeFichier1[3], Auteur1[50], Titre1[50], Interprete1[50]; Chanson obj (Duree1, TypeDeFichier1, Auteur1, Titre1, Interprete1); obj.Afficher (); } void Chanson::Afficher (void) { cout << "Type De Fichier : " << TypeDeFichier << endl; cout << "Duree : " << Duree << endl; cout << "Auteur : " << Auteur << endl; cout << "Titre : " << Titre << endl; cout << "Interprete : " << Interprete << endl; } Chanson::Chanson (int* Duree1, char* TypeDeFichier1, char* Auteur1, char* Titre1, char* Interprete1) { Duree=*Duree1; strcpy (TypeDeFichier, TypeDeFichier1); strcpy (Auteur, Auteur1); strcpy (Titre, Titre1); strcpy (Interprete, Interprete1); } Chanson::~Chanson (void) { cout << "Objet detruit."; } J'ai une erreur au niveau de l'instanciation. Aidez moi svp.
|
|
|
|
jeudi 2 mai 2002 à 00:16:15 |
Re : probleme sur une classe

Blustuff
|
Ton constructeur utilise comme premier parametre un pointeur sur int, et toi, tu as passé un parametre du type int. Tu dois remplacer
Chanson obj (Duree1, TypeDeFichier1, Auteur1, Titre1, Interprete1);
par
Chanson obj (&Duree1, TypeDeFichier1, Auteur1, Titre1, Interprete1);
puisque ce parametre est un pointeur, tu dois envoyer l'adresse de Duree1 et non sa valeur. Par ailleur l'usage de pointeur n'est pas justifié ici. Ton constrtucteur ne modifie pas la valeur de Duree, tu n'a donc pas besoin de passer la variable par pointeur. Tu peux donc remplacer
Duree=*Duree1;
par
Duree=Duree1;
et changer le type du premier parametre
int*
par le type
int
Si ca ne marche pas, donne plus de précision dans la description de l'erreur. Il peut y avoir bcp d'erreur dans l'instanciation. (Au moins préciser, si c'est une erreur de compilation, de liason, ou une exeption lors de l'execution)
Blustuff.
------------------------------- Réponse au message : -------------------------------
Voici mon code : #include <iostream.h> #include <string.h> class Chanson //classe Chanson { public: int Duree; char TypeDeFichier[3], Auteur[50], Titre[50], Interprete[50]; public: Chanson (int*, char*, char*, char*, char*); //Constructeur ~Chanson (void); //Destructeur void Afficher (); };
void main (void) { int Duree1; char TypeDeFichier1[3], Auteur1[50], Titre1[50], Interprete1[50]; Chanson obj (Duree1, TypeDeFichier1, Auteur1, Titre1, Interprete1); obj.Afficher (); }
void Chanson::Afficher (void) { cout << "Type De Fichier : " << TypeDeFichier << endl; cout << "Duree : " << Duree << endl; cout << "Auteur : " << Auteur << endl; cout << "Titre : " << Titre << endl; cout << "Interprete : " << Interprete << endl; }
Chanson::Chanson (int* Duree1, char* TypeDeFichier1, char* Auteur1, char* Titre1, char* Interprete1) { Duree=*Duree1; strcpy (TypeDeFichier, TypeDeFichier1); strcpy (Auteur, Auteur1); strcpy (Titre, Titre1); strcpy (Interprete, Interprete1); }
Chanson::~Chanson (void) { cout << "Objet detruit."; } J'ai une erreur au niveau de l'instanciation. Aidez moi svp.
|
|
|
|
jeudi 2 mai 2002 à 00:25:54 |
Re : probleme sur une classe

NerOcrO
|
Put1 je te remercie, c'était exactement ça.
NerOcrO
------------------------------- Réponse au message : -------------------------------
Ton constructeur utilise comme premier parametre un pointeur sur int, et toi, tu as passé un parametre du type int. Tu dois remplacer
Chanson obj (Duree1, TypeDeFichier1, Auteur1, Titre1, Interprete1);
par
Chanson obj (&Duree1, TypeDeFichier1, Auteur1, Titre1, Interprete1);
puisque ce parametre est un pointeur, tu dois envoyer l'adresse de Duree1 et non sa valeur. Par ailleur l'usage de pointeur n'est pas justifié ici. Ton constrtucteur ne modifie pas la valeur de Duree, tu n'a donc pas besoin de passer la variable par pointeur. Tu peux donc remplacer
Duree=*Duree1;
par
Duree=Duree1;
et changer le type du premier parametre
int*
par le type
int
Si ca ne marche pas, donne plus de précision dans la description de l'erreur. Il peut y avoir bcp d'erreur dans l'instanciation. (Au moins préciser, si c'est une erreur de compilation, de liason, ou une exeption lors de l'execution)
Blustuff.
------------------------------- Réponse au message : -------------------------------
Voici mon code : #include <iostream.h> #include <string.h> class Chanson //classe Chanson { public: int Duree; char TypeDeFichier[3], Auteur[50], Titre[50], Interprete[50]; public: Chanson (int*, char*, char*, char*, char*); //Constructeur ~Chanson (void); //Destructeur void Afficher (); };
void main (void) { int Duree1; char TypeDeFichier1[3], Auteur1[50], Titre1[50], Interprete1[50]; Chanson obj (Duree1, TypeDeFichier1, Auteur1, Titre1, Interprete1); obj.Afficher (); }
void Chanson::Afficher (void) { cout << "Type De Fichier : " << TypeDeFichier << endl; cout << "Duree : " << Duree << endl; cout << "Auteur : " << Auteur << endl; cout << "Titre : " << Titre << endl; cout << "Interprete : " << Interprete << endl; }
Chanson::Chanson (int* Duree1, char* TypeDeFichier1, char* Auteur1, char* Titre1, char* Interprete1) { Duree=*Duree1; strcpy (TypeDeFichier, TypeDeFichier1); strcpy (Auteur, Auteur1); strcpy (Titre, Titre1); strcpy (Interprete, Interprete1); }
Chanson::~Chanson (void) { cout << "Objet detruit."; } J'ai une erreur au niveau de l'instanciation. Aidez moi svp.
|
|
|
Cette discussion est classé dans : void, char, cout, chanson, endl
Répondre à ce message
Sujets en rapport avec ce message
Dans le genre prenant........ [ par Xs ]
oui !c 'est trés chiant !j'explique mon pb : j'ai un code source, fais par moi-meme, et dedans, je veux que l'on saisisse des renseignement comme le l
Pas De Solution??? [ par PsyCaDi ]
Bonjour,Voilà, je veux faire un truc tout con avec des tableaux mais ça ne marche pas. Quelqu'un peut-il me dire ce qui n'est pas bon (sauf moi, ça je
Ecriture/lecture dans un fichier [ par SneakGuy ]
Haaa... Merci, sa m'a aider... Enfin, j'ai encore plusieurs problemes...pour l'ecriture j'ai quelque chose qui ressemble a sa:char user[20];char pass[
une fiche de renseignement [ par cabarrus ]
je cherche à faire un programme qui demande des renseignements pour pouvoir ensuite les affiché comme une fiche d'identité!!!voici monprogramme mais m
petite question mais ke j'ai besoin [ par superoi ]
bon \jour je sais que c'est con mais j'ai vraiment besoin de savoir c'est pour savoir si ca existe en c ca : long (*f)(void)(char *str); et est ce
que des boucles. [ par pratix ]
Salut à tous.Je post mon prg cherchenbr modifié (voir sujet précédent ''int main" ).Programme compilé avec visual C++ 06. ( zéro erreur )j'ai essay
caractere speciaux a afficher en boucle [ par ranouf ]
#include void main (){ cout cout cout}comment faire pour automatiser cette tache ?j'aurai besoin de savoir a koi correspon
c++ algo [ par altay ]
L'analyste programmeur a 3 dimensionest ce que quelqu'un pourrait me faire l'algo de ce code merci d'avance :#pragma hdrstop#include #include
algo C++ [ par altay ]
L'analyste programmeur a 3 dimensionest ce que quelqu'un pourrait me faire l'algo de ce code merci d'avance :#pragma hdrstop#include #include
fichier exel (lecture et ecriture) [ par rissorg ]
Bonjour a tous!j'essaye de faire un programme qui doit lire differents fichiers exel ,comparer les donnees lu au donnees contenu dans un fichier text
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|