Templates: error LNK2019: unresolved external symbol
Bonjour ŕ tous,
Je suis débutant en C++ et je suis en train d'apprendre comment fonctionnent les templates. J'ai donc regardé le tutoriel proposé ici et essayé de reproduire un exemple.
Malheureusement je me retrouve avec cet erreur lorsque je compile mon exemple:
MapADT.obj : error LNK2019: unresolved external symbol "public: __thiscall Map<int>::Map<int>(void)" (??0?$Map@H@@QAE@XZ) referenced in function _main
Voici les 3 fichiers utilisés par l'application:
Map.h:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
#pragma once
template<typename Type1>
class Map
{
public:
Map<Type1>();
Map(int);
void insert( const Type1);
private:
}; |
Map.cpp:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
#include "StdAfx.h"
#include "Map.h"
template<typename Type1>
Map<Type1>::Map(){
std::cout << "aaa" << std::endl;
}
template<typename Type1>
void Map<Type1>::insert(Type1 key){
std::cout << key << " " << value << std::endl;
} |
MapADT.cpp:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
#include "stdafx.h"
#include <iostream>
#include <string>
#include "Map.h"
using namespace std;
int main(){
Map<int> map;
//map.insert(5,1);
return 0;
} |
Merci d'avance pour votre aide