sto iniziando a utilizzare i template e mi da il seguente errore:

error LNK2001: unresolved external symbol "public: __thiscall CMatrix<int>::~CMatrix<int>(void)" (??1?$CMatrix@H@@QAE@XZ)


ecco il file .h
codice:
#pragma once

template < class T >
class CMatrix
{
public:
	CMatrix(void);
public:
	~CMatrix(void);
};
e il cpp

codice:
#include "StdAfx.h"
#include "Matrix.h"



template < class T > 
CMatrix<T>::CMatrix(void)
{
}

template < class T > 
CMatrix<T>::~CMatrix(void)
{
}

Dove sbaglio?

EDIT: l'errore appare solo se dichiaro una variabile di tipo CMatrix :
codice:
CMatrix<int> a;