Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.188.254.179] |
|
Сообщ.
#1
,
|
|
|
Кто-нибудь знает про процедурный тип что-нибудь?
Что означает, например, такая строка: const error=procedure procerror(code:integer;value:string); |
Сообщ.
#2
,
|
|
|
Сообщ.
#3
,
|
|
|
Это переменный, которым фместо значений присваивают какую-нибуть процедуру.
|
Сообщ.
#4
,
|
|
|
Странно, но FAQ на главной отличается от предложенного FAQ выше.
|
Сообщ.
#5
,
|
|
|
В чем проблема?
Процедурная переменная фактически содержит указатель на точку входа в процедуру. Ими можно пользоваться, например, чтобы каким-то задавать некоторое действие динамически. Например, в Pascal'е есть встроенная процедурная переменная ExitProc, содержащая процедуру, выполняющуюся после завершения работы программы: Var OldExit: Procedure; Procedure MyExit; Begin WriteLn('Пока!!!'); ExitProc := OldExit; End; Begin WriteLn('Привет!!!'); OldExit := ExitProc; ExitProc := MyExit; End. Если я здесь ошибся, то это потому, что не помню: ExitProc типа Procedure или Pointer. По сути, одно и то же: процедурная переменная - Pointer на процедуру... |
Сообщ.
#6
,
|
|
|
Цитата NecroForos @ Что ты имел ввиду под этим? но FAQ на главной |
Сообщ.
#7
,
|
|
|
Цитата Arsuit @ Что ты имел ввиду под этим? Во-первых В_ВИДУ. Во-вторых я про некую несогласованность FAQ. (forum.sources и pascal.sourses разные вещи) |
Сообщ.
#8
,
|
|
|
M Так, хватит оффтопика! Чтобы внести ясность, скажу, что есть FAQ сайта и FAQ форума. Один не зависит от другого. |