[ Foro de C++ ]
Hola compañeros, buenos días, tardes o noches.
estoy intentando construir un pequeño juego, y estoy en una disyuntiva.
yo tengo la clase mapa, que yo quiero que una misma instancia, se comparta entre todos los personajes, fundamentalmente para consultar si la coordenada donde quieren ir está disponible o no.
yo pensé en hacerlo así, con punteros, pero no sé si es la mejor forma.
les dejo el código que creé que al menos me funcionó, pero quizás hay alguna forma más recomendable de hacer lo mismo.
#include <iostream>
#include <stdlib.h>
using namespace std;
class Mapa
{
private:
int x, y;
public:
Mapa ();
int getX ();
int getY ();
};
Mapa::Mapa ()
{
x = 10;
y = 19;
}
int Mapa::getX ()
{
return x;
}
int Mapa::getY ()
{
return y;
}
class Persona
{
private:
Mapa * map;
int x, y;
public:
Persona (Mapa *);
void consultar();
};
Persona::Persona (Mapa*m)
{
map = m;
x = 9;
y = 18;
}
void Persona::consultar ()
{
cout << "el valor de x es: " << map->getX() << endl;
}
int main ()
{
Mapa map;
Mapa *mp = ↦
Persona p1 (mp);
p1.consultar ();
system ("pause");
return 0;
}
Muchas gracias por leer,
un saludo.