Fonte: GeeksforGeeks Classe Stack Métodos Classe Stack Classe pilha
Métodos Declaração de uma
pilha de inteiros. #include <iostream> #include <stack> using namespace std; Método push (empilhar) int main() { stack<int> pilha; Método empty pilha.push(1); (verifica se a pilha pilha.push(2); está vazia) pilha.push(3); while(!pilha.empty()){ Método top (retorna cout << pilha.top() << endl; o topo da pilha) pilha.pop(); } return 0; Método pop } (desempilhar) Classe Stack Pilha de objetos #include <iostream> int main() { #include <stack> stack<animal> pilha; using namespace std; pilha.push(animal(1, "gato")); class animal{ pilha.push(animal(2, "cachorro")); public: pilha.push(animal(3, "tartaruga")); int codigo; pilha.push(animal(4, "jacaré")); string tipo; while(!pilha.empty()){ animal(int codigo, string tipo){ cout << pilha.top().tipo << endl; this->codigo = codigo; pilha.pop(); this->tipo = tipo;} } }; return 0; } Classe Stack Pilha de objetos #include <iostream> int main(){ #include <stack> stack <float> pi; //pilha de inteiros using namespace std; stack <float> pf; //pilha de floats void mostrar(stack<int> pilha){ pi.push(3); while(!pilha.empty()){ pi.push(5); cout << pilha.top() << endl; pi.push(1); pilha.pop(); pf.push(3.78); }} pf.push(45.3); void mostrar(stack<float> pilha){ pf.push(3.9); while(!pilha.empty()){ mostrar(pi); cout << pilha.top() << endl; mostrar(pf); pilha.pop(); pi.swap(pf); }} mostrar(pi); mostrar(pf); return 0; } Classe Stack Exercícios 1. Faça um programa que crie duas pilhas de inteiros com valores diferentes. Consulte a documentação e aplique o método swap, para a troca de valores entre as pilhas. 2. Implemente uma classe chamada pessoa, com os atributos id, nome, idade, peso, altura. Faça um programa para que crie uma pilha de pessoas. Crie um método para mostrar os dados das pessoas. 3. Pesquise qual a diferença entre os métodos push e emplace da classe pilha e os aplique no programa anterior para empilhar os dados. 4. Altere o programa para que o usuário possa indicar qual o tamanho da pilha e possa digitar os dados das pessoas. 5. Crie uma função para gravar os dados da pilha em um arquivo. 6. Crie uma função para ler os dados do arquivo e organizá-los em uma pilha. Imprima os dados da pilha.