Enviado em 27/05/2017 - 22:07h
O Push acho que esta certo o problema e que no Pop sempre retorna o memo o valor#ifndef NODE_H
#define NODE_H
class Node
{
public:
int conteudo;
Node *next;
Node();
};
#endif // NODE_H
#ifndef FILA_H
#define FILA_H
#include <stdlib.h>
#include "node.h"
class Fila
{
private:
Node *Head;
Node *Tail;
public:
Fila();
bool Fila_Push(int valor);
bool Fila_pop(int &valor);
void Fila_get(int &valor);
bool Fila_Vazia();
};
#endif // FILA_H
#include <iostream>
using namespace std;
#include "fila.h"
Fila::Fila()
{
Head = NULL;
Tail = NULL;
}
bool Fila::Fila_Push(int valor)
{
Node *Nnew = (Node*)malloc(sizeof(Node));
if(Nnew == NULL)
{
return false;
}
Nnew->conteudo = valor;
Nnew->next = NULL;
if(Fila::Fila_Vazia()){
Head = Nnew;
}else{
Nnew->next = Tail;
}
Tail = Nnew;
//cout<<Head->conteudo<<"\n";
return true;
}
bool Fila::Fila_pop(int &valor)
{
if(Fila::Fila_Vazia()){
return false;
}
Node *Temp;
Temp = Head;
valor = Head->conteudo;
Head = Temp->next;
if(Head == NULL){
Tail = NULL;
}
Temp = NULL;
free(Temp);
return true;
}
bool Fila::Fila_Vazia()
{
if(Head == NULL)
return true;
return false;
}
Atenção a quem posta conteúdo de dicas, scripts e tal (6)
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
O mínimo que você precisa saber sobre o terminal (parte 2)
O mínimo que você precisa saber sobre o terminal (parte 1)
Como iniciar uma máquina virtual do VirtualBox automaticamente no boot do LUbuntu 18 LTS
Como deixar as abas do Firefox mais fininhas
Mudar o gerenciador de login (GDM para SDDM)
"Tentando" fazer com que programas rodem no Wayland e no X11
Windows XP rodando no Linux (2)
Google Chrome não para de escrever no disco (3)
Notebook samsung 550xda não reconhece mais SSD (1)