Implemente em C++ uma pequena infra-estrutura para manipulação de listas dinâmicas
(correspondente à classe Vector de Java). O diagrama de classes está esboçado abaixo.
Observações:
Modifique o código de Vector para armazenar os dados em uma lista duplamente encadeada (crie a classe "Lista" se achar conveniente). Otimize os métodos de consulta, inserção e deleção mantendo um apontador (ou vários apontadores) para a última posição visitada da lista e iniciando as suas buscas a partir desse apontador (e não necessariamente de head ou tail).
A nossa classe Vector armazena apenas instâncias de Object. Modifique a classe Vector
para armazenar também valores de tipos primitivos.
Dica. Em Java, podemos declarar um objeto to tipo array passando o
tipo das variáveis a serem armazenadas. Ou seja, Array é uma classe parametrizada. C++
dá suporte para a definição de classes parametrizadas arbitrárias.