Difference between revisions of "Records"

From Lazarus wiki
m (Text replace - "delphi>" to "syntaxhighlight>")
Line 53: Line 53:
 
|[[Pointers|next]]
 
|[[Pointers|next]]
 
|}
 
|}
 +
 +
[[Category: Object Pascal Introduction]]

Revision as of 21:00, 20 April 2013

5E - Records (author: Tao Yue, state: unchanged)

A record allows you to keep related data items in one structure. If you want information about a person, you may want to know name, age, city, state, and zip.

To declare a record, you'd use:

TYPE
  TypeName = record
    identifierlist1 : datatype1;
    ...
    identifierlistn : datatypen;
  end;

For example:

type
  InfoType = record
    Name : string;
    Age : integer;
    City, State : String;
    Zip : integer;
  end;

Each of the identifiers Name, Age, City, State, and Zip are referred to as fields. You access a field within a variable by:

 VariableIdentifier.FieldIdentifier

A period separates the variable and the field name.

There's a very useful statement for dealing with records. If you are going to be using one record variable for a long time and don't feel like typing the variable name over and over, you can strip off the variable name and use only field identifiers. You do this by:

WITH RecordVariable DO
BEGIN
  ...
END;

Example:

with Info do
begin
  Age := 18;
  ZIP := 90210;
end;
previous contents next