Hola gusto en saludar, tengo una consulta y todo empieza asi:
Cree la tipica clase Arreglo, a la cual le asigno un nombre cuando se crea. (en la interfaz del programa)
Ahora lo que quiero hacer es Crear un contenedor para almacenar todos los objetos arreglos que se creen.
Código:
#ifndef ARREGLO_H
#define ARREGLO_H
#include <stdio.h>
#include <string.h>
class Arreglo
{
private:
int *vector;
int tamano;
int cantidad;
char *nombre;
public:
Arreglo(const char*, int);
int getPos(int);
int getCant();
int getTam();
char *getNombre(void){ return nombre ;}
void insertElement(int a);
~Arreglo();
};
#endif // ARREGLO_H
Arreglo::Arreglo(const char *unnombre, int n)
{
nombre = new char [strlen(unnombre)+1];
strcpy(nombre,unnombre);
tamano=n;
cantidad=0;
vector = new int[n];
for(int i=0; i<n; i++)
{
vector[i]=0;
}
}
int Arreglo::getCant()
{
return cantidad;
}
/*char Arreglo::getNombre(void)
{
return *nombre;
}*/
int Arreglo::getPos(int a)
{
return vector[a];
}
int Arreglo::getTam()
{
return tamano;
}
void Arreglo::insertElement(int dato)
{
if(tamano == cantidad)
{
throw "No queda espacio en el vector";
}
vector[cantidad] = dato;
cantidad++;
}
Arreglo::~Arreglo()
{
delete []vector;
}
Pero no encuentro el modo de realizarlo, ya que en java era bastante facil crear el arreglo de objetos. Iba a utilizar la plantilla de vector pero a la vez quiero hacer otras operaciones con el conjunto de vectores que guarde asi que quiero implementar mi propia clase, pero no tengo idea de como lograrlo, osea mas que todo crear el arreglo de objetos que guarde a todos los objetos creado por la clase Arreglo.
Ojala se haya entendido mi duda
saludos