Ver Mensaje Individual
  #4  
Antiguo 11-12-2003
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Cool

Has utilizado pascal alguna vez antes de delphi?, bueno, si no, quizas has utilizado C.

Resulta que una variable de tipo objeto, es en realidad, un apuntador al objeto. Es decir, si declaro una variable como

Código:
var
  Form1 : TForm1;
En realidad, aunque una instancia de la clase TForm1 ocupe muchos bytes, la variable ocupará únicamente 4 bytes, usualmente en el segmento de datos de la aplicación, aunque podrá estar en el stack o en el heap, dependiendo de donde declares la variable. Si esta en la sección de interface, como lo hace normalmente delphi al crear un nuevo formulario, esos 4 bytes estarán reservados durante toda la ejecución de la aplicación, ya que están en el segmento de datos.

Ahora..., el formulario en si, que es una instancia de la clase, residirá en el Heap (monton) y su memoria se reserva al llamar al constructor de la clase y se libera al llamar al destructor.

Código:
  // reserva de memoria
  Form1 := TForm1.Create(Application);
  operaciones...
  // liberación de memoria
  Form1.Free;
Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita