Hello tout le monde ^^, je débute en c++ .J ai un problème au niveau des templates.
J ai tout mis dans un ficher .h, mais j obtiens quand même une erreur à la compilation
dans mon fichier Test.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 /tmp/ccIIxsFq.o: In function `main': Test.cpp:(.text+0x19): undefined reference to `ClassiqueRle::ClassiqueRle()' Test.cpp:(.text+0x29): undefined reference to `ClassiqueRle::~ClassiqueRle()'
j ai 2 fichiers : Regle.h et Test.cpp
mon fichier Test.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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 //Regle.h #ifndef REGLE_H_ #define REGLE_H_ template <class T> struct Regle { public: virtual void setvoisinage(T nb); virtual T getvoisinage(); Regle<T>(); virtual ~Regle<T>(); }; struct ClassiqueRle : public Regle<int> { private: int nb; public: //Creer la regle void setvoisinage(int nb) { this->nb=nb; } //Accede a la regle int getvoisinage() { return this->nb; } ClassiqueRle(); ~ClassiqueRle(); }; #endif /* REGLE_H_ */
Je vois vraiment pas comment résoudre mon problème
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 //Test.cpp #include "Regle.h" int main() { using namespace std; ClassiqueRle R; return 0; };![]()
Partager