Templeate class T的结构函数参数

Templeate class T的构造函数参数
想实现一shere_ptr,不知道怎么实现,求教。
template<class T>

class SharedPtr
{
SharedPtr()
{
m_pT = new T();
}
~SharedPtr()
{
delete m_pT;
}

    T* m_pT;
}
关键是T的构造函数参数怎么传入???
------解决思路----------------------
用T*来构造shared_ptr
------解决思路----------------------
模板类也不是这样写的好吧。 先声明这个类, 然后在定义, 都写在头文件中。