c++:根据下面List类创建一个模板

根据下面list类创建一个模板,请问应该怎么做,请求指导,谢谢

img

仅供参考

#include <iostream>
using namespace std;

template <typename T>
class List
{
public:
    List():head(nullptr),tail(nullptr),theCount(0){}
    virtual ~List(){}
    void insert(T value);

private:
    class ListCell{
    public:ListCell(T v,ListCell *cell):val(v),next(cell){}
        T val;
        ListCell *next;
    };

    ListCell *head;
    ListCell *tail;
    int theCount;
};

int main()
{
   List<int> l;
   cout << "Hello World";
   return 0;
}