Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Hola amigos! necesito una ayudita!

Estas en el tema de Hola amigos! necesito una ayudita! en el foro de C/C++ en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código C++: Ver original #include<iostream>   using namespace std ;   class Elemento { public :       //Constructor       ...
  #1 (permalink)  
Antiguo 23/04/2013, 21:05
 
Fecha de Ingreso: abril-2013
Mensajes: 3
Antigüedad: 10 años, 11 meses
Puntos: 0
Hola amigos! necesito una ayudita!

Código C++:
Ver original
  1. #include<iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Elemento
  6. {
  7. public:
  8.       //Constructor
  9.       Elemento(int t);
  10.       //obtener el tipo del elemento.
  11.       //@retval tipo del elemento.
  12.       int Tipo() //Function inline No abusemos de ellas...
  13.       {
  14.           return tipo;
  15.       }
  16. private:
  17.         //Tipo
  18.         int tipo;
  19.         //siguiente elemento
  20.         Elemento *sig;
  21.         friend class Lista;//Declaro mi amistad con la lista (Clase Lista)
  22. };
  23.  
  24. class Lista
  25. {
  26.       //constructor
  27.       Lista() : cabeza(NULL){};
  28.       //Desctructor
  29.       ~Lista(){liberar_lista();};
  30.       //insertar nuevo elemento
  31.      
  32.       void Nuevo(int tipo);
  33.       //obtener primer elemento
  34.       Elemento *primero()
  35.       {
  36.                return cabeza;
  37.       }
  38.       //siguinte elemento a p
  39.       Elemento *siguiente(Elemento *p)
  40.       {
  41.            if(p)
  42.                 return p->sig;
  43.            else
  44.                 return p;
  45.       };
  46.       //lista esta vacia?
  47.       bool esta_vacia()
  48.       {
  49.            return cabeza==NULL;
  50.       }
  51.      
  52. private:
  53.         //puntero al primer elemento
  54.         Elemento *cabeza;
  55.         //privada para borrar lista
  56.         void liberar_lista();
  57. };
  58.  
  59. Elemento::Elemento(int t) : tipo(t), sig(NULL){}
  60. //---------------
  61. void Lista::Nuevo(int tipo)
  62. {
  63.      Elemento *p;
  64.      p = new Elemento(tipo); //nuevo elemento
  65.      p->sig=cabeza;//al principio de la lista
  66.      cabeza =p;
  67. }
  68. Lista::Liberar_lista()
  69. {
  70.      Elemento *p;
  71.      while(cabeza);
  72.      {
  73.           p=cabeza;
  74.           cabeza=p->sig;
  75.           delete p;
  76.      }
  77. }


La verdad soy nuevo en esto de la programación,estoy estudiando ingeniería en software pero con este programa no se ni por donde empezar alguien me podría ayudar se los agradecería mucho!!
Segun mi profe comento que al programa le faltaban algunas cosas y tenia errores, lo cuales desconozco :S
  #2 (permalink)  
Antiguo 27/04/2013, 08:14
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 11 años, 7 meses
Puntos: 83
Respuesta: Hola amigos! necesito una ayudita!

"...no se ni por donde empezar..."

Ok, compila el codigo y a ver que sale :)

Te adelanto algo de trabajo: ahi no tienes un programa sino una clase que por si sola no hace nada. Tienes un metodo de la clase implementado pero no declarado como miembro de la clase, por lo que el compilador te dirá que una funcion miembro de la clase no está declarada. Cuando lo hayas corregido el compilador te dira que esa funcion no coincide con el prototipo declarado porque la has implementado sin tipo cuando no es un metodo constructor. Corrige y tendras solucionado la parte sintactica; luego solo tienes que comprovar el funcionamiento (que cada metodo haga lo que deba hacer).

Saludos
vosk

Etiquetas: int, programa, struct
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:11.