61 lines
937 B
C++
61 lines
937 B
C++
//
|
|
// Created by eduardo on 9/11/19.
|
|
//
|
|
|
|
#include "Pila.h"
|
|
|
|
Pila::Pila() {
|
|
top= nullptr;
|
|
current= nullptr;
|
|
temp= nullptr;
|
|
}
|
|
|
|
void Pila::insert(int info) {
|
|
auto inserted = new node;
|
|
inserted->data = info;
|
|
if(top== nullptr){
|
|
top=inserted;
|
|
} else {
|
|
inserted->next = top;
|
|
top = inserted;
|
|
}
|
|
}
|
|
|
|
Pila::nodePtr Pila::take() {
|
|
temp=top;
|
|
top=top->next;
|
|
return temp;
|
|
}
|
|
|
|
void Pila::remove() {
|
|
nodePtr delPtr = top;
|
|
top=top->next;
|
|
delete delPtr;
|
|
}
|
|
|
|
Pila::~Pila() = default;
|
|
|
|
const Pila::node *Pila::getTop() const {
|
|
return top;
|
|
}
|
|
|
|
void Pila::setTop(const Pila::node *top) {
|
|
Pila::top = const_cast<nodePtr>(top);
|
|
}
|
|
|
|
const Pila::node *Pila::getCurrent() const {
|
|
return current;
|
|
}
|
|
|
|
void Pila::setCurrent(const Pila::node *current) {
|
|
Pila::current = const_cast<nodePtr>(current);
|
|
}
|
|
|
|
const Pila::node *Pila::getTemp() const {
|
|
return temp;
|
|
}
|
|
|
|
void Pila::setTemp(const Pila::node *temp) {
|
|
Pila::temp = const_cast<nodePtr>(temp);
|
|
}
|