Você está na página 1de 7

C++ Classe stack

Profa. Me Monica Tissiani De Toni Pereira


Classe Stack
Métodos

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.

Você também pode gostar