Difference between revisions of "Record/es"

From Lazarus wiki
m (Text replace - "delphi>" to "syntaxhighlight>")
Line 7: Line 7:
 
   Algunos ejemplos de registros:
 
   Algunos ejemplos de registros:
  
<delphi> Type
+
<syntaxhighlight> Type
 
   RegistroEjemplo = Record
 
   RegistroEjemplo = Record
 
                     Valores: array [1..200] of real;
 
                     Valores: array [1..200] of real;
Line 20: Line 20:
 
               FechaNacimiento: TDateTime;
 
               FechaNacimiento: TDateTime;
 
               CuotasAlDia: Boolean
 
               CuotasAlDia: Boolean
             End;</delphi>
+
             End;</syntaxhighlight>
  
 
&nbsp;&nbsp;&nbsp;Un regsitro es tratado por el programa como una única entidad y por ello un registro completo puede ser copiado (siempre que el destino de la copia sea del mismo tipo) así:
 
&nbsp;&nbsp;&nbsp;Un regsitro es tratado por el programa como una única entidad y por ello un registro completo puede ser copiado (siempre que el destino de la copia sea del mismo tipo) así:
  
<delphi> Var registro1, registro2 : Socio;
+
<syntaxhighlight> Var registro1, registro2 : Socio;
 
  Begin
 
  Begin
 
   { asignar los valores de los campos de ''registro1'' a ''registro2''}
 
   { asignar los valores de los campos de ''registro1'' a ''registro2''}
Line 30: Line 30:
 
   ...
 
   ...
 
   registro2 := registro1;
 
   registro2 := registro1;
  End;</delphi>
+
  End;</syntaxhighlight>
  
 
&nbsp;&nbsp;&nbsp;A los campos individuales  se accede colocando un punto entre el nombre del registro y el nombre del campo, de esta forma:
 
&nbsp;&nbsp;&nbsp;A los campos individuales  se accede colocando un punto entre el nombre del registro y el nombre del campo, de esta forma:
<delphi>  registro.Nombre := 'Jorge';
+
<syntaxhighlight>  registro.Nombre := 'Jorge';
 
   registro.Apellidos := 'Pérez Serrano';
 
   registro.Apellidos := 'Pérez Serrano';
 
   registro.Telefono := 789534;
 
   registro.Telefono := 789534;
   registro.CuotasAlDia := TRUE;</delphi>
+
   registro.CuotasAlDia := TRUE;</syntaxhighlight>
  
 
&nbsp;&nbsp;&nbsp;Así mismo, una serie de campos pueden ser asignados de forma conjunta con la utilización del constructor WITH:
 
&nbsp;&nbsp;&nbsp;Así mismo, una serie de campos pueden ser asignados de forma conjunta con la utilización del constructor WITH:
<delphi> WITH registro do
+
<syntaxhighlight> WITH registro do
 
   begin
 
   begin
 
     Nombre := 'Jorge';
 
     Nombre := 'Jorge';
Line 45: Line 45:
 
     Telefono := 789534;
 
     Telefono := 789534;
 
     CuotasAlDia := TRUE;
 
     CuotasAlDia := TRUE;
   end;</delphi>
+
   end;</syntaxhighlight>
  
 
&nbsp;&nbsp;&nbsp;Los registros se utilizan mucho en Pascal, para agrupar elementos ligados lógicamente.
 
&nbsp;&nbsp;&nbsp;Los registros se utilizan mucho en Pascal, para agrupar elementos ligados lógicamente.

Revision as of 15:54, 24 March 2012

Deutsch (de) English (en) español (es) suomi (fi) français (fr) magyar (hu) português (pt) русский (ru)

   Un tipo de datos altamente estructurado en Pascal .

   Mientras las estructuras simples cómo matrices y conjuntos consisten en agrupaciones de elementos del mismo tipo, un registro consiste en una agrupación de elementos de tipos diversos y puede ser muy complejo. Cada una de las distintas partes de un registro se denomina Campo.

   Algunos ejemplos de registros:

 Type
   RegistroEjemplo = Record
                     Valores: array [1..200] of real;
                     CuantosValores: Integer; { el número real de puntos en la matriz }
                     Media: Real { el promedio o media de los valores en la matriz }
                   End;

   Socio = Record
              Nombre, Apellidos : string;
              Direccion: array [1..3] of string;
              Telefono : Integer;
              FechaNacimiento: TDateTime;
              CuotasAlDia: Boolean
            End;

   Un regsitro es tratado por el programa como una única entidad y por ello un registro completo puede ser copiado (siempre que el destino de la copia sea del mismo tipo) así:

 Var registro1, registro2 : Socio;
 Begin
   { asignar los valores de los campos de ''registro1'' a ''registro2''}
   ...
   ...
  registro2 := registro1;
 End;

   A los campos individuales se accede colocando un punto entre el nombre del registro y el nombre del campo, de esta forma:

  registro.Nombre := 'Jorge';
  registro.Apellidos := 'Pérez Serrano';
  registro.Telefono := 789534;
  registro.CuotasAlDia := TRUE;

   Así mismo, una serie de campos pueden ser asignados de forma conjunta con la utilización del constructor WITH:

 WITH registro do
   begin
     Nombre := 'Jorge';
     Apellidos := 'Pérez Serrano';
     Telefono := 789534;
     CuotasAlDia := TRUE;
   end;

   Los registros se utilizan mucho en Pascal, para agrupar elementos ligados lógicamente.