Hola!, muchas gracias por responder.
con referencia a
lo que apunta q es al elemento dato, y si tienes razón con respecto al ciclo me hacía falta algo así como un contador para q siga recorriendo los elementos, estoy un poco perdida en esta parte y ya le he intentado de diferentes formas, pero me marca un error de memoria.
Código PHP:
using namespace std;
class Memoria{
public:
struct elemento{
// int id;
string dato;
// int tam;
elemento *sig;
}*pila;
//typedef pila *indice;
public:
Memoria(){ //constructor iniciamos en 0
pila->sig=NULL;
}
void insertar(string d/*, int t*/){
elemento *q;
q=new elemento();
q->dato=d;
q->sig=pila; //q->sig apunta a lo que está apuntando m
pila=q;
}
string extraer (){
elemento *q;
string d;
if(pila==NULL){
cout<<"\n Pila vacia";
// return -1;
}
q=pila;
pila=q->sig;
d=q->dato;
delete q;
return d;
}
void imprimir()
{
elemento *q;
//aqui es la parte en la que ya le he intentado de varias formas,
while(pila!=NULL){//pila->sig!=null, q->sig!=null aquí lo que hice fue poner de estas diferentes formas adentro del while
cout<<"\n solo imprimo";
cout<<"\n "<<pila->dato;
q->sig=q->sig;//pila->sig=q->sig; y bueno este sería como mi tipo contador y lo mismo aquí, intenté de estas formas pero no me queda
}
// return *str;
}
bool vacia(){
if(pila==NULL)
return true;
return false;
}
~Memoria(){
while(pila!=NULL){
extraer();
}
}
};
/*void muestra()
{
Memoria p;
while(p.vacia()!=true){
cout<<"\n solo imprimo";
cout<<"\n m"<<m;
}
}*/
string datos(){
string d;
cout<<"\n proceso: ";
cin>>d;
return d;
}
int tamanio(){
int t;
cout<<"\n Tamaño: ";
cin>>t;
return t;
}
void proceso(string n){
Memoria p;
int len=-1;
char *array;
p.insertar(n);
cout<<"\n"<<n;
while(array[++len]!=0){
}
}
void ejecutar(int np){
}
void transferir(){
}
int main() {
int op;
int *n,*s,n1,np;
string d;
Memoria p;
do{
cout<<"\n Menú <-1 para salir>";
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();
break;