Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - grucho

#1
antes q nada muchas gracias x responder.

Cita de: CalgaryCorpus en 30 Octubre 2017, 23:59 PM
Una clase se puede declarar o definir o ambas.
Si solo pones el nombre sin especificar como esta definida, se trata de la declaracion.
Solo requieres un nombre, en ese momento. En alguna parte de tu programa tiene que estar esa variable definida, sino el programa no va a linkear.

Solo es posible definir punteros a los tipos declarados. Esto es posible, pues al compilador solo le interesa conocer el tamano de los datos y el tamano de los punteros no depende de los datos apuntados, es constante.

Si modificaras el programa y removieras el * y en vez de puntero fuera un campo de ese tipo, el compilador no va a aceptar la declaracion pues no tiene manera de calcular el tamano.


listo ahi entendi, pero tengo una duda nueva
por que simplemente no incluyen el archivo de encabezado de la clase InteractComponent?
disculpa si soy muy molesto
#2
Hola gente quisiera saber por que en algunos archivos de encabezados crean clases imcompletas.

aca un ejemplo.
Código (cpp) [Seleccionar]

#pragma once

class InteractComponent; // <------ a esto me refiero con clase incompleta.

class LeverTile final : public LevelDynamicTile {
public:
LeverTile(LevelScreen* levelScreen);

//.....
//.....
private:
// the lever can only be used by hand if the main char is in this range.
// it is however always possible for a telekinesis spell to activate the lever if its projectile reaches the lever.
static const float ACTIVATE_RANGE;
std::vector<LeverDependentTile*> m_dependentTiles;
bool m_isGround = false;
bool m_isTelekinesisLocked = false;
InteractComponent* m_interactComponent;
};


si se fijan la clase InteractComponent esta incompleta.
tambien crea un puntero de tipo InteractComponent.

desde ya muchas gracias a todos  y disculpen si no me explico bien ya q soy nuevo en c++.


· Los títulos deben ser descriptivos
>aquí las reglas del foro
-Engel Lex