Seu trabalho é mesmo em C++? Pq o resto de toda sua construção é em C. E você não usou o vector para nada.
Enfim, se sua lista é encadeada, em algum lugar você terá que ter uma estrutura com um ponteiro para outra.
E não existe limite de tamanho para listas assim.