![]() |
António Roberto Software |
|
Linguagens
de Programação 1
|
2º
ano da Licenciatura em Informática de Gestão
|
Aulas de 11 e 17 de Janeiro de 2002
Herança + Class TemplatesListas duplamente ligadas
- Estrutura dos elementos de uma lista duplamente ligada.
- Abstracção das operações numa lista, seja ela simplesmente ou duplamente ligada
Estabelecimento da ligação entre dois elementos de uma lista :
Ligação numa lista simplesmente ligada Ligação numa lista duplamente ligada- class cElemListaSimples e class cElemListaDupla
- cElemListaDupla é derivada de cElemListaSimples :
- redefine o método ligacao e acrescenta a propriedade Anterior
- Transformação da classe cLista ( lista de alunos, simplesmente ligada ) dada na aula de 3 de Janeiro para classe template cLista<class cELEMLISTA> :
- Eliminação dos casos especiais com 2 sentinelas ( uma no início outra no fim )
- Os métodos Inserir, Remover, Obter e Procurar têm a mesma lógica ( e o mesmo código ) quer a lista seja simplesmente ligada quer duplamente ligada.
- Experimente instanciar, no cliente, a classe cLista<cElemListaSimples>
- Experimente instanciar, no cliente, a classe cLista<cElemListaDupla>
Projecto : Lista Tipo de Projectos : Win32 Console Application Ficheiros do projecto : Declaração e definição da class Template cLista<class cELEMLISTA >
Declaração das classes cElemListaSimples e cElemListaDupla
Definição das classes cElemListaSimples e cElemListaDupla
Declaração e definição inline da classe cAluno
Cliente das classes instanciadas de cLista<class cELEMLISTA >