I do know that template class's definition and implementation should be on the same header file. But I was taught a bit differently at school.
I'll have the template class's definition in the header file, and at the end of the header file, I'll do #include "MyFile.cpp", which contains the implementation of the templated class.
Is this bad programming practice?