Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/02/2008, 12:41
Avatar de arwen_1
arwen_1
 
Fecha de Ingreso: diciembre-2006
Mensajes: 81
Antigüedad: 18 años, 1 mes
Puntos: 0
Exclamación Clases-> Matrices-> Estructura

Buenas a todas y todos :D

Les explico:

Tengo un archivo llamado: definiciones_clases.h donde como su nombre lo indica estan definidas las clases.

Código:
/* MAPA */
class mapa
{
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////// MATRIZ LOGICA ///////////////////////////////

// estructura de un tren en la matriz logica
typedef struct trensito
{
        int tipo; // 1. Pasajero
                 // 2. Carga
}TREN;

//estructura de un track de la via ferrea dentro de la
// matriz logica
typedef struct tracksito
{                  
        int tipo; 
        bool status; // 0. Ocupado 1. Libre
}TRACK;


//estructura de una celde de la matriz logica
typedef struct celdita
{
        int tipo; // 1. Estacion   2. Tren    3. Track
        TRACK tra; //tra tra tra tra
        TREN tre;

} CELDA;

////FIN/////////////////////////// MATRIZ LOGICA ///////////////////////////////
////////////////////////////////////////////////////////////////////////////////

        private:
                CELDA clda[17][20];
                int x,y;

        public:
                mapa(CELDA clda);
                //metodo que carga la configuracion actual de la simulacion
                void cargar_configuracion(void);
                //metodo utilizado para verificar que tipo de elemento hay en
                //unas coordenadas dadas: 1. estacion 2. tren 3. track
                int verificar_posicion(int x, int y,CELDA clda);
};  //fin de la definicion de la clase: mapa
Quisiera resaltar, CELDA clda[17][20]; ya que es donde tengo el problema.

Mi primera pregunta es, si es válido declarar la estructura (CELDA) de la matriz (cld[17][20]) en donde esta...?


Luego, el archivo llamado

Luego el archivo llamado: implementacion_clases.cpp es donde desarrollo el codgo de los metodos de las clases.

Código:
#include "definicion_clases.h"


//constructor que inicializa la matriz logica 
mapa::mapa(clda)
{
        int fi,co;
        for (fi=0;fi<=17;fi++)
        {
                for (co=0;co<=20;co++)
                {
                       clda[fi][co].
                        x=0;
                } // fin del for (co=0;co<=20;co++)
        } // fin del for (fi=0;fi<=17;fi++)

};
es aqui, en la linea roja, donde al colocar el . para acceder a la estructura me da el siguiente error:

[C++ Error] implementacion_clases.cpp(1): Unable to invoke Code Completion due to errors in source code


he tbn colocado en: mapa::mapa(clda) -----------> mapa::mapa(CELDA clda)

pero de ninguna manera me funciona.


Esperando por favor me ayuden

Gracias de antemano.