LNK2019: unresolved... (template<class T> class Counter)
От: Аноним  
Дата: 10.09.06 09:41
Оценка:
Добрый день!
Есть класс Counter:
Counter.h:
#pragma once

#include <list>
#include <string>

template<class T> class Counter
{
public:
    Counter(void);
};

Counter.cpp:
#include "Counter.h"

template<class T> Counter<T>::Counter()
{
}

Его использование:
#include <string>
#include "Counter.h"

//Test - класс для теста
void Test::Count()
{
    std::string str = "qwe";
    
    Counter<std::string> counter;
}


При компиляции всё нормально, но линковщик выдает ошибку:

error LNK2019: unresolved external symbol "public: __thiscall Counter<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >::Counter<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >(void)" (??0?$Counter@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@@QAE@XZ) referenced in function "public: static void __cdecl Test::Count(void)" (?Count@Test@@SAXXZ)

Никак не могу понять — в чём дело?! Подскажите, пожалуйста!!!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.