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

Arreglo de Clases

Estas en el tema de Arreglo de Clases en el foro de C/C++ en Foros del Web. Hola comunidad! Tengo un pregunta con respecto a los arreglos de clases, ¿Es posible declarar un arreglo de clase, y que la clase tenga constructor? ...
  #1 (permalink)  
Antiguo 14/01/2015, 22:01
 
Fecha de Ingreso: julio-2010
Mensajes: 191
Antigüedad: 13 años, 10 meses
Puntos: 2
Arreglo de Clases

Hola comunidad!

Tengo un pregunta con respecto a los arreglos de clases, ¿Es posible declarar un arreglo de clase, y que la clase tenga constructor?

Pues, que todos los objetos sean inicializados con los valores que se le otorgen en el constructor.

Pero no se como se declaran

Tengo este código. Obviamente está malo, ¿Como declaro el arreglo?
Código C++:
Ver original
  1. #include<iostream>
  2. using namespace std;
  3.  
  4. class ejemplo{
  5.    
  6.     private:
  7.         int altura,peso;
  8.    
  9.        
  10.     public:
  11.            
  12.         ejemplo(int altura, int peso)
  13.         {
  14.             setAltura(altura);
  15.             setPeso(peso);
  16.         }
  17.        
  18.         int getAltura(){
  19.             return altura;
  20.         }
  21.        
  22.         void setAltura(int height)
  23.         {
  24.             altura=height;
  25.         }
  26.        
  27.         int getPeso(){
  28.             return peso;
  29.         }
  30.        
  31.         void setPeso(int weight){
  32.             peso=weight;
  33.         }
  34. };
  35.  
  36. main()
  37. {
  38.    
  39.     ejemplo miEjemplo[5]={ (10,2)};
  40.     /*
  41.     mi[0].  setAltura(20);
  42.     mi[0].setPeso(21);
  43.     cout<<"Altura de mi[0]"<<mi[0].getAltura();
  44.     cout<<"Peso de mi[0]"<<mi[0].getPeso();
  45.     cout<<endl;cout<<endl;cout<<endl;
  46.     mi[0].  setPeso(100);
  47.     mi[0].setAltura(541);
  48.     cout<<"Altura de mi[1]"<<mi[0].getAltura();
  49.     cout<<"Peso de mi[1]"<<mi[0].getPeso();*/
  50. }
Espero me ayuden.

Gracias

Última edición por l222p; 14/01/2015 a las 22:07
  #2 (permalink)  
Antiguo 15/01/2015, 02:52
Avatar de vangodp  
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 6 meses
Puntos: 38
Respuesta: Arreglo de Clases

Código C++:
Ver original
  1. #include<iostream>
  2. using namespace std;
  3. int i = 0;
  4. class ejemplo {
  5.  
  6.     private:
  7.         float suAltura, suPeso;
  8.        
  9.        
  10.     public:
  11.    
  12.         ejemplo ( float unaAltura = 0, float unPeso = 0 ): suAltura(unaAltura), suPeso(unPeso) {
  13.             cout << "clase " << ++i << " Inicializada. \nPeso: " << getPeso() << " Altura: " << getAltura() << endl << endl;
  14.         }
  15.        
  16.         float getAltura() {
  17.             return suAltura;
  18.         }
  19.        
  20.         void setAltura ( float unaAltura ) {
  21.             suAltura = unaAltura;
  22.         }
  23.        
  24.         float getPeso() {
  25.             return suPeso;
  26.         }
  27.        
  28.         void setPeso ( float unPeso ) {
  29.             suPeso = unPeso;
  30.         }
  31. };
  32.  
  33. main() {
  34.     // El orden es: 1º{1.73,70.16},2º{0,0},3º{1.77,80.11},4º{1.68,75.40} y aun que no he puesto inicializaciones para la 5ª clase, se inicializa con parametros por defecto {0,0}
  35.     ejemplo miEjemplo[5] = { {1.73,70.16},{},{1.77,80.11},{1.68,75.40} };
  36.  
  37. }

Esta puede ser una forma =)
Tenga claro que el constructor por defecto siempre se llama automáticamente le pases o no parámetros.

Última edición por vangodp; 15/01/2015 a las 02:59

Etiquetas: arreglo, clase, clases, int
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 18:29.