Проблема с шаблонами
От: sergeymak http://sites.google.com/site/gamesoftdev/
Дата: 02.10.07 10:30
Оценка:
Никак не могу разрбраться с шаблонами. В проекте есть 2 модуля (2 DLL-ки). В первом модуле в неком .h файле имею:

#pragma once

#ifdef ENGINE_EXPORTS
#define ENGINE_API __declspec(dllexport)
#else
#define ENGINE_API __declspec(dllimport)
#endif

class ENGINE_API ResourceManager
{
public:

template< class T >
SmartPtr<T> GetResource(const string& name);    
};

template SmartPtr<SceneModel> ResourceManager::GetResource(const string& name);


далее из второго модуля вызываю:

ResourceManager* manager = ...
manager->GetResource<SceneModel>("bla-bla");


И при линкове получаю ошибку, что фунция не найдена (error LNK2001: unresolved external symbol). Хотя в первом модуле могу с этой функцией работать нормально. Кто-нибудь может объянить, в чем дело?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.