Problème de débutant en C++
waouu
Messages postés
11
Statut
Membre
-
waouu Messages postés 11 Statut Membre -
waouu Messages postés 11 Statut Membre -
Bonjour à tous,
j'ai un petit souci que j'ai un peu du mal à comprendre, mais je suis débutant en C++ alors soyez indulgents ;)
voilà mon souci :
je définis une classe comme suit
class Tableau{
public :
...
Tableau operator+(Tableau &tab);
Tableau operator=(Tableau &tab);
private:
int m_longueur;
int *m_table;
};
Tableau Tableau::operator+(Tableau &tab){
// concatène bout à bout deux tableaux
return *this;
}
Tableau Tableau::operator=(Tableau &tab){
// crée un tableau égal au tableau passé en référence
return *this;
}
}
main(){
Tableau tab1;
Tableau tab2
Tableau tab3;
tab3 = tab1 + tab2; // cette ligne pose un problème
cout<<tab1 ;
cout<<tab2 ;
cout<<tab3 ;
}
et là j'ai une grosse erreur à l'éxécution et en débuggant je vois qu'on a appelé le destructeur pour détruire tab1 et je ne comprends pas pourquoi???
Je vous remercie d'avance pour votre précieuse aide :)
j'ai un petit souci que j'ai un peu du mal à comprendre, mais je suis débutant en C++ alors soyez indulgents ;)
voilà mon souci :
je définis une classe comme suit
class Tableau{
public :
...
Tableau operator+(Tableau &tab);
Tableau operator=(Tableau &tab);
private:
int m_longueur;
int *m_table;
};
Tableau Tableau::operator+(Tableau &tab){
// concatène bout à bout deux tableaux
return *this;
}
Tableau Tableau::operator=(Tableau &tab){
// crée un tableau égal au tableau passé en référence
return *this;
}
}
main(){
Tableau tab1;
Tableau tab2
Tableau tab3;
tab3 = tab1 + tab2; // cette ligne pose un problème
cout<<tab1 ;
cout<<tab2 ;
cout<<tab3 ;
}
et là j'ai une grosse erreur à l'éxécution et en débuggant je vois qu'on a appelé le destructeur pour détruire tab1 et je ne comprends pas pourquoi???
Je vous remercie d'avance pour votre précieuse aide :)
A voir également:
- Problème de débutant en C++
- Logiciel de programmation pour débutant - Guide
- Logiciel montage vidéo débutant - Guide
- Apprendre le coran pour débutant (+ pdf) - Télécharger - Histoire & Religion
- Debut logiciel de capture video - Télécharger - TV & Vidéo
- Comment utiliser un ordinateur pour un débutant - Astuces et Solutions
2 réponses
Salut,
Perso je suis aussi débutant en C++ mais souvent les tableaux c'est des problèmes d'adressage. Essaye en mettant un "&" devant tes tabs...
Perso je suis aussi débutant en C++ mais souvent les tableaux c'est des problèmes d'adressage. Essaye en mettant un "&" devant tes tabs...
Bonjour arsene78220,
merci pour ta réponse, en fait j'ai réussi à résoudre le poblème, mais j'aimerais comprendre ce qui cloche ;)
Je l'ai résolu en retournant dans mes fonctions des références :)
Tableau &Tableau::operator=(Tableau &tab);
Tableau &Tableau::operator+(Tableau &tab);
Merci quand même pour ta participation, si quelqu'un a une réponse à mon questionnement ce serait super :)
merci pour ta réponse, en fait j'ai réussi à résoudre le poblème, mais j'aimerais comprendre ce qui cloche ;)
Je l'ai résolu en retournant dans mes fonctions des références :)
Tableau &Tableau::operator=(Tableau &tab);
Tableau &Tableau::operator+(Tableau &tab);
Merci quand même pour ta participation, si quelqu'un a une réponse à mon questionnement ce serait super :)