Reserved words/ru
│
Deutsch (de) │
English (en) │
français (fr) │
polski (pl) │
русский (ru) │
中文(中国大陆) (zh_CN) │
Зарезервированные слова отдельных режимов компилятора объединены следующим образом:
- Режим Turbo Pascal: для использования доступны зарезервированные слова Turbo Pascal.
- Режим Delphi: для использования доступны зарезервированные слова Turbo Pascal и Object Pascal.
- Режим Free Pascal: для использования доступны зарезервированные слова Turbo Pascal и Object Pascal.
Зарезервированные слова в Turbo Pascal
Следующие зарезервированные слова встречаются в режиме Turbo Pascal:
ключевое слово | описание |
---|---|
and | логический оператор, требующий, чтобы оба операнда были равны true для того. чтобы результат был равен true |
array | множество элементов с одинаковым именем |
asm | начало кода, написанного на языке ассемблера |
begin | начало блока кода |
break | выход из условия case |
case | выбирает определенный сегмент кода для выполнения в зависимости от значения |
const | объявляет идентификатор с неизменяемым значением или переменную с инициализированным значением |
constructor | процедура, используемая для создания объекта |
continue | пропускает инструкции в цикле for и возобновляет выполнение с начала цикла |
destructor | процедура, используемая для "уничтожения" объекта |
div | оператор целочисленного деления |
do | используется для указания начала цикла |
downto | используется в цикле for для указания декремента (уменьшения) переменной-счетчика |
else | используется в условной конструкции if для выполнения альтернативной ветви, когда ветвь if не выполняется |
end | конец блока кода, записи или некоторых других конструкций |
false | логическое значение, означающее что условие не выполняется; противоположно значению true |
file | внешняя структура данных, обычно хранящаяся на диске |
for | цикл с использованием увеличения или уменьшения управляющей переменной |
function | объявляет начало процедуры, которая возвращает значение результата |
goto | осуществляет выход из сегмента кода и переходит в другое место |
if | проверяет условие и по результату сравнения выполняет набор инструкций |
implementation | определяет внутренние процедуры в модуле |
in | определяет элементы в коллекции |
inline | непосредственно встраивает машинный код в процедуру |
interface | глобальные объявления процедур в unit |
label | определяет точку перехода для оператора goto |
mod | оператор, возвращающий остаток целочисленного деления |
nil | значение указателя, означающее, что указатель ни на что не ссылается |
not | логический оператор, который инвертирует значение результата проверки |
object | определяет конструкцию типа "объект" |
of | определяет характеристики переменной |
on | |
operator | определяет процедуру, использующуюся для реализации оператора |
or | логический оператор, который позволяет использовать любой из двух вариантов |
packed | указывает, что элементы в массиве используют меньше памяти (данное ключевое слово необходимо, прежде всего, для совместимости с устаревшими программами, когда элементы массива упаковывались обычно автоматически) |
procedure | определяет начало процедуры, которая не возвращает значение результата |
program | определяет начало приложения. Данное ключевое слово обычно является необязательным |
record | набор разнотипных переменных, объединенных под одним именем |
repeat | цикл, представляющий секцию кода до условной инструкции until, выполняющийся до тех пор, пока результат сравнения равен true |
set | набор значений |
shl | оператор сдвига значения влево; эквивалентен умножению на степень 2 |
shr | оператор сдвига значения вправо; эквивалентен делению на степень 2 |
string | объявляет переменную, содержащую множество символов |
then | указывает начало кода в условии сравнения if |
to | используется в цикле for для указания инкремента (увеличения) переменной-счетчика |
true | логическое значение, указывающее что сравнение выполняется; противоположно значению false |
type | объявляет типы записей или новых классов переменных |
unit | раздельно компилируемые модули |
until | указывает окончание блока проверки в цикле repeat |
uses | перечисление названий модулей в текущей программе или модулей, на которые есть ссылки |
var | объявление переменных |
while | проверяет значение и, если оно равно true, выполняет инструкции цикла |
with | reference the internal variables within a record without having to refer to the record itself |
xor | логический оператор, являющийся исключающим ИЛИ |
Зарезервированные слова в Object Pascal
Object Pascal extends the (Turbo) Pascal language with both support for dealing more easily with objects (object orientation) as well as other newer/more advanced concepts (threads, etc).
In addition to the reserved words in Turbo Pascal, the following reserved words are available in Delphi mode as well:
as
class
dispose
except
exit
exports
finalization
finally
inherited
initialization
is
library
new
on
out
property
raise
self
threadvar
try
Зарезервированные слова в Free Pascal
Зарезервированные слова в режиме Free Pascal включают:
- зарезервированные слова режима Turbo Pascal
- зарезервированные слова режима Object Pascal
Модификаторы (директивы)
Ниже представлен список модификаторов. Модификаторы не являются строго зарезервированными словами, однако они используются так же, как зарезервированные слова.
Подробнее см. в руководстве по Free Pascal.
absolute
abstract
alias
assembler
cdecl
cppdecl
default
export
external
forward
index
local
name
nostackframe
oldfpccall
override
pascal
private
protected
public
published
read
register
reintroduce
safecall
softfloat
stdcall
virtual
write
Неподдерживаемые модификаторы Turbo Pascal
The reason why these modifiers are not supported is that these modifiers deal with 16 bit code for DOS. In other words, these modifiers have special meaning for 16 bit programming under DOS and Windows 3.x.
As Free Pascal does not support 16 bit code (only 32 and 64 bit), these modifiers are irrelevant in Free Pascal code.
More functionality
Apart from the language features provided by the reserved words/keywords mentioned above, there is a lot of functionality available for the programmer in the various libraries:
- RTL: Run-Time Library, available for all FPC and Lazarus programs
- FCL: Free Component Library: a core set of libraries available for Lazarus programs and usually for FPC (FPC can be compiled without it, but that only happens on purpose for low-memory embedded systems etc)
- FPC Packages: other packages provided by FPC
- Lazarus components: these are Lazarus components that can be dropped on a form and often based on FCL or FPC packages
- Lazarus utility functions: e.g. the fileutil unit.
Apart from the libraries provided by FPC and Lazarus, there are more libraries/components available:
- FPC user-supplied units: see the FPC wiki
- Lazarus CCR: components
- User-supplied code on the internet: see