hola viendo un codigo de por ahi me re sulto llamativo el hecho de que se hace esto:
(teniendo una clase definida : tipo)
Bien practicamente es eso, el tema es que 'funasd()' es llamada mas de una ves. Y lo segundo es que la funcion untipo.caminaunrato() tira desp de 10 seg un mensaje en pantalla el cual avisa q el tipo deja de caminar.
Lo q me llama la atencion es que al llamar varias veces a 'funasd()'
los otros 'tipos que caminan' no se terminan/borran, siguen funcionando y tiran el mensaje tranquilamente.
Esto es porque al ser un puntero y usar el operador new no rescribe la memoria ya usada y crea un objeto nuevo en otro espacio?
En este caso q pasa con esa memoria que fue declarada y se perdio al asignar una nuava direccion al puntero 'untipo'?
Espero haberme explicado bien...
(teniendo una clase definida : tipo)
Código (cpp) [Seleccionar]
class coso
{
void funasd()
{
tipo *untipo;
untipo = new tipo;
untipo.caminaunrato();
}
};
Bien practicamente es eso, el tema es que 'funasd()' es llamada mas de una ves. Y lo segundo es que la funcion untipo.caminaunrato() tira desp de 10 seg un mensaje en pantalla el cual avisa q el tipo deja de caminar.
Lo q me llama la atencion es que al llamar varias veces a 'funasd()'
los otros 'tipos que caminan' no se terminan/borran, siguen funcionando y tiran el mensaje tranquilamente.
Esto es porque al ser un puntero y usar el operador new no rescribe la memoria ya usada y crea un objeto nuevo en otro espacio?
En este caso q pasa con esa memoria que fue declarada y se perdio al asignar una nuava direccion al puntero 'untipo'?
Espero haberme explicado bien...