Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/03/2016, 17:41
darkedlico94
 
Fecha de Ingreso: julio-2013
Mensajes: 9
Antigüedad: 10 años, 9 meses
Puntos: 0
imprimir lista en c++

Hola, es un código muy sencillo, y según yo está bien pero no logro que imprima la lista si alguien me puede ayudar, por favor

Código PHP:
#include <iostream>

using namespace std;
class 
Memoria{
private:
    
struct elemento{
        
//  int id;
        
int dato;
        
// int tam;
        
elemento *sig;
        
    }*
m;
    
public:
    
Memoria(){ //constructor iniciamos en 0
        
m=NULL;
    }
    

    
    
    
    
void insertar(int d/*, int t*/){
        
elemento *q;
        
q=new elemento();
        
//q->id=num;
        
q->dato=d;
        
//q->tam=t;
        
q->sig=m//q->sig apunta a lo que está apuntando m
        
m=q;
        
//num++;
    
}
    
 
    
    
int extraer (){
        
elemento *q;
        
int d;
        
        if(
m==NULL){
            
cout<<"\n Pila vacia";
             return -
1;
        }
        
q=m;
        
m=q->sig;
   
        
d=q->dato;
   
        
delete q;
        return 
d;
    }
    
    
void imprimir()// esta es mi función donde mando a imprimir, pero realmente no hace nada, y según yo está bien
    
{
        
elemento *q;
        while(
m!=NULL){
            
cout<<"\n solo imprimo";
            
cout<<"\n m"<<q->dato;
            
        }
        
    }
    
    
    
bool vacia(){
        if(
m==NULL)
            return 
true;
        return 
false;
        
    }
    
     ~
Memoria(){
     while(
m!=NULL){
     
extraer();
     }
     }
};

/*void muestra() esto sólo es una función de prueba q pongo
{
    Memoria p;
    while(p.vacia()!=true){
        cout<<"\n solo imprimo";
        cout<<"\n m"<<m;
        
    }
    
}*/

int datos(){
    
int d;
    
cout<<"\n proceso: ";
    
cin>>d;
    return 
d;
    
}

int tamanio(){
    
int t;
    
cout<<"\n Tamaño: ";
    
cin>>t;
    return 
t;
}


void proceso(int n){
    
Memoria p;
    
int len=-1;
    
p.insertar(n);
    
    
    
cout<<"\n"<<n;
    
}

void transferir(){
    
}

int main() {
    
int op;
    
int *n,d,*s,n1;
    
Memoria p;
    
cout<<"\n Menú";
    
cout<<"\n 1. Almacenar una tarea";
    
cout<<"\n 2. Ejecutar tarea (pasar tarea de memoria a cpu)";
    
cout<<"\n 3. Eliminar tarea de cpu"<<endl;
    
// p.mostrar();
    
    
cin>>op;
    
// cout<<"\n 4. Elimina"
    
    
switch (op) {
        case 
1:
            
cout<<"\n proceso?: ";
            
cin>>d;
            
proceso(d);
            
p.imprimir();// aquí mando llamar a imprimir.
            
break;
        case 
2:
            break;
        default:
            break;
    }