Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: anonimo12121 en 9 Marzo 2012, 01:33 am



Título: [C++][DUDA]Como se define el constructor de una estructura dentro de una clase?
Publicado por: anonimo12121 en 9 Marzo 2012, 01:33 am
Como se define el constructor de una estructura dentro de una clase?

Código
  1. class Tiles {
  2.    private:
  3.        struct _TILE_{
  4.            int x;
  5.            int y;
  6.            _TILE_();
  7.        };
...


Título: Re: [C++][DUDA]Como se define el constructor de una estructura dentro de una clase?
Publicado por: nirvguy en 9 Marzo 2012, 01:57 am
Si no entendí mal la pregunta es exactamente como vos pusiste
Código
  1. _TILE_() { //Aca inicializas x e y }
  2. _TILE_(int xx,int yy) { //Lo mismo, pero con argumentos }
  3.  
Y lo mismo con el destructor.


Título: Re: [C++][DUDA]Como se define el constructor de una estructura dentro de una clase?
Publicado por: anonimo12121 en 9 Marzo 2012, 02:31 am
pero dentro de donde? :) sin que sea inline.


Título: Re: [C++][DUDA]Como se define el constructor de una estructura dentro de una clase?
Publicado por: nirvguy en 9 Marzo 2012, 04:23 am
Ahh, disculpá ya te entendí.
Así:
Código
  1. Tiles::_TILE_::_TILE_() {
  2. //Implementacion
  3. }
  4.  
en tu archivo de implementación.
¿Es eso lo que preguntabas?


Título: Re: [C++][DUDA]Como se define el constructor de una estructura dentro de una clase?
Publicado por: anonimo12121 en 9 Marzo 2012, 11:51 am
Sí gracias. voy a probarlo.


Ya lo he probado funciona :) queda así el code.

Código
  1. class Tiles {
  2.    private:
  3.        struct _TILE_{
  4.            int _X;
  5.            int _Y;
  6.            _TILE_();
  7.        }_TILE_[100];
  8.        int _Tiles[100];
  9.        char _Name[30];//name file config
  10.        int _W;
  11.        int _H;
  12.        int _NMT;//numero de map tiles
  13.        int _Map[100][100];//mapa
  14.        int _WMap;
  15.        int _HMap;
  16.        sf::Image _Image;
  17.        sf::Sprite _Sprite[10];
  18.    public:
  19.        Tiles();
  20.        void Load();
  21.        void Print(sf::RenderWindow &app);
  22. };
  23. Tiles::Tiles(){
  24. };
  25. Tiles::_TILE_::_TILE_(){
  26.    _X=2;
  27.    _Y=2;
  28. };
  29.  
...