Block

From Lazarus wiki
Revision as of 00:09, 15 October 2020 by Rfc1394 (talk | contribs)
Jump to navigationJump to search

English (en)

A block is a sequence of declarations followed by a sequence of statements. The declarations are optional. The sequence of statements can be empty, but at least the beginend-frame (or repeatuntil-frame) has to be present (in routines >asm<end is allowed, too). The key feature of a block is, that declarations are only valid while the statements are processed. This concept is known as scope.

Example

The following is a valid block:

const
	foobar = -1;
type
	booleanArray = array of boolean;
var
	check: booleanArray;
begin
	check := booleanArray.create(true, false, true);
end;

An indication, whether something constitutes a block, is, whether you can use it as part of a routine definition, as well as make a [[Program|program] out of it (syntactically; apart from the terminating dot).

see also