End
Deutsch · English · Français · Suomi · Русский
The keyword end terminates an entity. It appears at several occasions:
- to mark the end of a module, i.e. a program, unit or library
- to conclude a block of statements or instructions respectively
- to wrap up some language constructs:
- most prominently if … then … end, or
- case … of …
end, but also - try … except … finally … end
- to finish off certain type declarations, such as object, record and class
- in extended Pascal
to end do …starts the definition of the finalization part of a module
For example:
procedure proc0;
var
a, b: integer;
begin
???
end;The end gloss is one of the exceptions to the rule that every statement must be followed by a semicolon. The statement immediately preceding an end does not require a semicolon.
It is also used to end a Pascal module, in which case it is followed by a period rather than a semicolon (in the example below, the last semicolon is optional):
program proc1;
var
SL: TStrings;
begin
SL := TStringlist.create;
try
???
finally
SL.free;
end;
end.end is used to indicate the end of the unit:
unit detent;
uses math;
procedure delta(r:real);
implementation
procedure delta;
begin
...
end;
...
(* Note: No corresponding '''begin''' statement *)
end.It also closes a record:
Type
ExampleRecord = Record
Values: array [1..200] of real;
NumValues: Integer; { holds the actual number of points in the array }
Average: Real { holds the average or mean of the values in the array }
End;From the Free Pascal wiki, page "End", as it stood on 2020-06-24 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
