Advertisement
Vesker

PilhaEnc

Sep 15th, 2015
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.20 KB | None | 0 0
  1. #include "ListaEnc.hpp"
  2.     // "Copyright [2015] <Ricardo Sell>"
  3.      template<typename T>
  4.       class PilhaEnc: private ListaEnc<T> {  // herdado a ListaEnc
  5.        public:
  6.         PilhaEnc() : ListaEnc<T>() {}  // construtor da pilha herdado da ListaE
  7.         ~PilhaEnc() {}
  8.         void empilha(const T& dado) {  // coloca dado na ultima posição da pilha
  9.             ListaEnc<T>::adicionaNoInicio(dado);  // faz herdado da ListaEnc
  10.        }
  11.        T desempilha() {  // retira o ultimo elemento que entrou
  12.             return ListaEnc<T>::retiraDoInicio();  // herdado da ListaEnc
  13.        }
  14.        T topo() {  // mostra o dado que está na ultima posição da pilha
  15.         T val = desempilha();  // cria uma variavel que armazena dado do ultimo
  16.         empilha(val);  // recoloca a variavel no lugar que estava
  17.         return val;  // retorna o valor recolocado
  18.        }
  19.        void limparPilha() {  // destroi todos os elementos da classe pilha
  20.          ListaEnc<T>::destroiLista();  // função para destruir herdado da ListaE
  21.          }
  22.        bool PilhaVazia() {  // verifica se a pilha está vazia
  23.          return ListaEnc<T>::listaVazia();  // herdado da ListaEncadeada
  24.          }
  25.          };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement