パブリックテンプレート関数を次のクラスで定義しましたEventDispatcher
:
public:
template <class className> void AddEventListener ( className* );
関数は次のように実装されます。
template <class className>
void EventDispatcher::AddEventListener ( className* ptr )
{
};
Timer
次に、あるクラスで、子であるインサテンスを作成し、次のEventDispatcher
ように呼び出しますAddEventListener
。
timer->AddEventListener ( this );
エラーが発生した後
/tmp/ccjRF7sK.o: In function `AirHockeyServer::AirHockeyServer()':
AirHockeyServer.cpp:(.text+0xa5): undefined reference to `void EventDispatcher::AddEventListener<AirHockeyServer>(AirHockeyServer*)'
/tmp/ccjRF7sK.o: In function `AirHockeyServer::AirHockeyServer()':
AirHockeyServer.cpp:(.text+0x187): undefined reference to `void EventDispatcher::AddEventListener<AirHockeyServer>(AirHockeyServer*)'
collect2: ld returned 1 exit status