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

Duda con la plantilla vector y su implementacion

Estas en el tema de Duda con la plantilla vector y su implementacion en el foro de C/C++ en Foros del Web. Buenas tengo una duda en como implementar la plantilla vector para crear un array dinamico de objetos de una clase y llenar sus datos con ...
  #1 (permalink)  
Antiguo 27/01/2012, 13:56
 
Fecha de Ingreso: enero-2011
Ubicación: Venezuela, Táchira
Mensajes: 96
Antigüedad: 13 años, 10 meses
Puntos: 10
Duda con la plantilla vector y su implementacion

Buenas tengo una duda en como implementar la plantilla vector para crear un array dinamico de objetos de una clase y llenar sus datos con un ciclo..

aqui la clase Persona:

Código C++:
Ver original
  1. #include "persona.h"
  2. #include <cstring>
  3.  
  4. Persona::Persona()
  5. {
  6.     //ctor
  7. }
  8.  
  9. Persona::Persona(int ed,char* nom)
  10. {
  11.     edad = ed;
  12.     strcpy(nombre,nom);
  13. }
  14.  
  15. Persona::~Persona()
  16. {
  17.     //dtor
  18. }
  19.  
  20. void Persona::setEdad(int x)
  21. {
  22.     edad = x;
  23. }
  24.  
  25. void Persona::setNombre(char* nom)
  26. {
  27.     nombre = new char[strlen(nom)];
  28.     strcpy(nombre, nom);
  29. }
  30.  
  31. int Persona::getEdad()
  32. {
  33.     return edad;
  34. }
  35.  
  36. char* Persona::getNombre()
  37. {
  38.     return nombre;
  39. }

esta es su cabecera:

Código C++:
Ver original
  1. #ifndef PERSONA_H
  2. #define PERSONA_H
  3.  
  4.  
  5. class Persona
  6. {
  7.     public:
  8.         Persona();
  9.         Persona(int,char*);
  10.         ~Persona();
  11.         void setEdad(int);
  12.         void setNombre(char*);
  13.         int getEdad();
  14.         char* getNombre();
  15.     protected:
  16.     private:
  17.         int edad;
  18.         char *nombre;
  19. };
  20.  
  21. #endif // PERSONA_H

y aqui la clase principal:

Código C++:
Ver original
  1. #include <iostream>
  2. #include <vector>
  3. #include "persona.h"
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9.    
  10.     return 0;
  11. }

quiero llenar datos de una cantidad de Personas que no se sabe .. se llenaran datos hasta que el usuario desee no continuar... como implemento esa plantilla para lograr lo que quiero?? gracias de antemano!
  #2 (permalink)  
Antiguo 27/01/2012, 22:24
Avatar de CapacProg  
Fecha de Ingreso: marzo-2010
Ubicación: Lima - Perú
Mensajes: 324
Antigüedad: 14 años, 7 meses
Puntos: 71
Respuesta: Duda con la plantilla vector y su implementacion

Para este efecto existe los STL Containers Con un list podrías hacer esto

Código C++:
Ver original
  1. list<*Persona> lista;
  2. Persona *p = new Persona;
  3. lista.push_front(p);
por citar una de las muchas opciones que hay disponible.
__________________
%
El mejor guerrero no es el que triunfa siempre sino el que vuelve sin miedo a la batalla.
%
  #3 (permalink)  
Antiguo 28/01/2012, 07:01
 
Fecha de Ingreso: enero-2011
Ubicación: Venezuela, Táchira
Mensajes: 96
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: Duda con la plantilla vector y su implementacion

oyw gracias lo intentare y te aviso!
  #4 (permalink)  
Antiguo 28/01/2012, 08:47
 
Fecha de Ingreso: enero-2011
Ubicación: Venezuela, Táchira
Mensajes: 96
Antigüedad: 13 años, 10 meses
Puntos: 10
Respuesta: Duda con la plantilla vector y su implementacion

Cita:
Iniciado por CapacProg Ver Mensaje
Para este efecto existe los STL Containers Con un list podrías hacer esto

Código C++:
Ver original
  1. list<*Persona> lista;
  2. Persona *p = new Persona;
  3. lista.push_front(p);
por citar una de las muchas opciones que hay disponible.

luego como hago para mostrar los datos de la lista en un for ??

Etiquetas: clase, implementacion, plantilla, string, vectores
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 10:20.