" undefined reference to " avec methode template
Bonjour à tous
j'essai de compiler un projet et voici ce que le compilateur me retourne
Code:
1 2 3 4
|
main.o: In function `main':
main.cpp:(.text+0x28): undefined reference to `A* Engine::element<A>()'
collect2: ld returned 1 exit status |
Voici mes differents fichiers :
main.cpp
Code:
1 2 3 4 5 6 7 8 9 10
|
#include <engine.h>
#include <a.h>
int main(int argc, char *argv[])
{
Engine engine;
engine.element<A>();
return 0;
} |
engine.cpp
Code:
1 2 3 4 5 6 7 8 9 10
|
#include "engine.h"
Engine::Engine() {}
Engine::~Engine() {}
template<class T> T* Engine::element()
{
} |
engine.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
#ifndef ENGINE_H
#define ENGINE_H
#include <QList>
class Engine {
public:
Engine();
~Engine();
template<class T> QList < T* > element();
};
#endif |
a.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
#ifndef A_H
#define A_H
class A {
public:
A() {};
~A() {};
};
#endif |
J'ai simplifié le code de mon projet (assez gros à la base) pour avoir le problème avec le moins de code possible.
Merci d'avance.