Lista encadeada de classe
Publicado por Hunz 17/01/2005
[ Hits: 14.335 ]
Homepage: http://tnegri.com/
Script que mostra como usar
uma lista encadeada de classe
(class).
#include <iostream.h>
#include <stdlib.h>
static int total = 0; /* Numero total de unidades */
class unidades {
int numero; /* Nº Unidade */
public:
unidades(); /* Construtor padrao */
unidades(int); /* Construtor sobrecarregado */
void aloca_proximo(); /* Construtor da proxima unidade */
void aloca_proximo(int); /* Construtor da proxima unidade sobrecarregado */
unidades *proximo; /* Proxima unidade */
int acessa_numero() const { return numero; }
void muda_numero(int num) { numero = num; }
};
unidades::unidades()
{
total++;
numero = total;
}
unidades::unidades(int num)
{
total++;
numero = num;
}
void unidades::aloca_proximo()
{
proximo = (unidades *) malloc(sizeof(unidades));
total++;
proximo->numero = total;
}
void unidades::aloca_proximo(int num)
{
proximo = (unidades *) malloc(sizeof(unidades));
total++;
proximo->numero = num;
}
int main(void)
{
unidades principal;
unidades *aux;
cout << principal.acessa_numero() << endl;
principal.aloca_proximo();
principal.proximo->muda_numero(2);
cout << principal.proximo->acessa_numero() << endl;
aux = &principal;
cout << aux->acessa_numero() << endl;
cout << aux->proximo->acessa_numero() << endl;
aux->muda_numero(10);
cout << principal.acessa_numero() << endl;
cout << aux->acessa_numero() << endl;
aux = aux->proximo;
aux->muda_numero(20);
cout << principal.proximo->acessa_numero() << endl;
cout << aux->acessa_numero() << endl;
aux->aloca_proximo();
aux = aux->proximo;
aux->muda_numero(3);
cout << aux->acessa_numero() << endl;
aux = &principal;
cout << principal.acessa_numero() << endl;
cout << aux->acessa_numero() << endl;
aux = aux->proximo;
cout << principal.proximo->acessa_numero() << endl;
cout << aux->acessa_numero() << endl;
aux = aux->proximo;
cout << aux->acessa_numero() << endl;
cout << principal.proximo->proximo->acessa_numero() << endl;
aux->aloca_proximo();
aux = aux->proximo;
cout << aux->acessa_numero() << endl;
return 0;
}
Agenda eletronica com banco de dados em arquivo texto
Teste de desempenho com números primos em C (corrigido)
Crud em C++ orientado a objetos com banco de dados MySQL
Vários pacotes de ping disparados contra o host
Nenhum comentário foi encontrado.
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor









