Sign in Join
Wiki copytemporary

End/ru: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: End/ru

OldNewLine
1+\
2+**End** является [[Keyword/ru|ключевым словом]], предназначенным для:
3+
4+- завершения [[Block/ru|блока]] инструкций, начинающихся зарезервированными словами [[Begin/ru|Begin]] или [[Case/ru|Case]];
5+- завершения объявлений [[Field/ru|полей]] в [[Record/ru|записях]];
6+- завершения конструкций [[Try/ru|Try]] .. [[Finally/ru|Finally]] или [[Try/ru|Try]] .. [[Except/ru|Except]].
7+
8+Оно также используется для завершения [[Unit/ru|модуля]], не имеющего кода в разделе **initialization**.
9+
10+Например:
11+
12+``` pascal
13+ procedure Proc1;
14+
15+ var a,b: integer;
16+
17+ begin
18+ (..)
19+ end;
20+```
21+
22+Оператор **end** является одним из исключений из правил, согласно которому каждый оператор должен оканчиваться точкой с запятой. Для оператора, предшествующего оператору **end**, не требуется ставить точку с запятой.
23+
24+Оператор **end** также используется для указания конца файла с исходным кодом на языке [[Pascal]]. В этом случае за ним ставится [[Period/ru|точка]], а не [[;/ru|точка с запятой]] (в приведенном ниже примере последняя точка с запятой является не обязательной):
25+
26+``` pascal
27+
28+ program Proc2;
29+ var
30+ SL: TStrings;
31+ begin
32+ SL := TStringlist.Create;
33+ try
34+ (..)
35+ finally
36+ SL.Free;
37+ end;
38+ end.
39+```
40+
41+Оператор **end** используется для указания конца модуля:
42+
43+``` pascal
44+ unit detent;
45+ uses math;
46+
47+ procedure delta(r:real);
48+
49+ implementation
50+
51+ procedure delta;
52+ begin
53+
54+ ...
55+
56+ end;
57+
58+ ...
59+ (* Примечание: Нет соответствующего оператора '''begin''' *)
60+
61+ end.
62+```
63+
64+Также оператор **end** предназначен для завершения описания [[Record/ru|записей]]:
65+
66+``` pascal
67+ Type
68+ ExampleRecord = Record
69+ Values: array [1..200] of real;
70+ NumValues: Integer; { holds the actual number of points in the array }
71+ Average: Real { holds the average or mean of the values in the array }
72+ End;
73+```
74+
75+---
76+*From the Free Pascal wiki, page "End/ru", as it stood on 2020-02-14 after a change by Trev, 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](/wiki-contact).*

Back to history