J'ai conçu une classe animal. Je l'appelle dans la classe animaux pour créer un vecteur d' "animal". Enfin, j'ai mon programme principale main.cpp qui contient l'erreur suivante : Salut : voici mon erreur
[Linker error] undefined reference to `animaux::ajouterAnimal(int, std::string)'
![]()
animal.h------------------------------------------------------------
animal.c++ ---------------------------------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 #include <string> #include <iostream> using namespace std; class animal { private : //Attributs int numAnimal; string nomAnimal; public : //Constructeur animal(int num, string nom); //Methode afficher infos animal void afficher(); //Accesseur Numero animal int getNumAnimal(); //Accesseur Nom animal string getNomAnimal(); //Methode modification du Numero Animal void setNumAnimal(int num); //Methode modification du Nom Animal void setNomAnimal(string nom); };
animaux.h --------------------------------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 #include "animal.h" using namespace std; //Constructeur animal::animal(int num, string nom) { numAnimal = num; nomAnimal = nom; } //Methode afficher infos animal void animal::afficher() { cout << "Numero Animal : " << numAnimal << " | Nom Animal : " << nomAnimal <<endl; } //Accesseur Numero animal int animal::getNumAnimal() { return numAnimal; } //Accesseur Nom animal string animal::getNomAnimal() { return nomAnimal; } //Methode modification du Numero Animal void animal::setNumAnimal(int num) { numAnimal=num; } //Methode modification du Nom Animal void animal::setNomAnimal(string nom) { nomAnimal=nom; }
animaux.cpp--------------------------------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 #include "animal.h" #include "string.h" #include <iostream> #include "vector" #include <iomanip> using namespace std; class animaux { private : vector<animal> an; public : //Constructeur animaux(); //void go(animal e); //Methode afficher infos animal void ajouterAnimal(int number,string name); };
main.cpp------------------------------------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 #include "animaux.h" //Constructeur animaux::animaux() { vector<animal> an; } /*void animaux::go(animal e) { }*/ //Methode afficher infos animal void animaux::ajouterAnimal(int number,string name) { animal a1 (number,name); //go(a1); an.push_back( a1 ); }
Si vous avez une idée ? je vous remercie d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75 #include "animaux.h" using namespace std; int main() { int reponse; //Creation vecteur d'animaux animaux *an; while (reponse != 0) { cout << "------------------------------------------------------------------\n"; cout << "---------------------------- GESTION DU ZOO ----------------------\n"; cout << "- -\n"; cout << "- Menu Principal : Choisissez l'Action a effectuer : -\n"; cout << "- -\n"; cout << "- -\n"; cout << "- Ajout : -\n"; cout << "- -\n"; cout << "---1 : Ajouter un animal -\n"; cout << "---2 : Ajouter un enclos -\n"; cout << "---3 : Ajouter une personne -\n"; cout << "- -\n"; cout << "- -\n"; cout << "- Affectation : -\n"; cout << "- -\n"; cout << "---4 : Affecter un nouvel enclos a un animal -\n"; cout << "- -\n"; cout << "- -\n"; cout << "- Modification : -\n"; cout << "- -\n"; cout << "---5 : Modifier les charges d'un soigneur -\n"; cout << "---6 : Modifier les charges d'un agent d'entretien -\n"; cout << "- -\n"; cout << "- -\n"; cout << "- Edition : -\n"; cout << "- -\n"; cout << "---7 : Liste des animaux avec enclos, soigneur, cout journalier -\n"; cout << "---8 : Liste du personnel du zoo avec charges -\n"; cout << "---9 : Cout journalier zoo : cout nourriture et personnel -\n"; cout << "- -\n"; cout << "---0 : Quitter -\n"; cout << "------------------------------------------------------------------\n"; cout << "-----------------------------Application : B.BOUSQUET - M.GUEYE---\n"; cout << "------------------------------------------------------------------\n"; cout << "- -\n"; cout << "- -\n"; cout << "-Quelle action souhaitez vous effectuer ? (numero action) -\n"; cout << "- -\n"; cout <<"==>"; cin >>reponse; switch(reponse) { case 1: cout<<"ajout anim"<<endl; an->ajouterAnimal(16,"Pierre"); break; case 2: cout<<"ajout enclos"<<endl;break; case 3: cout<<"ajout personne"<<endl;break; case 4: cout<<"affecter enclos"<<endl;break; case 5: cout<<"modif charge soigneur"<<endl;break; case 6: cout<<"modif charge agent"<<endl;break; case 7: cout<<"req1';'"<<endl;break; case 8: cout<<"req2"<<endl;break; case 9: cout<<"req3"<<endl;break; //case 0: cout<<"Au revoir";break; exit; } } }
bonne journée
Partager