Страница 1 из 1

Pascal (ООП) - Вызов Правила

Добавлено: 23 окт 2006, 22:23
кирюша
Помогите, пожалуйста!

НА (ООП) Pascale нужно реализовать вызов Правила, использующий обращение к переменной Процедурного
типа (в отличие от стандартного способа вызова - VarName.MethodName)

Re: Pascal (ООП) - Вызов Правила

Добавлено: 24 окт 2006, 10:39
BBB
Не совсем понятен вопрос: что вызывает вашу сложность?

Вот пример (компилируется на Borland Pascal 7.0) работы с переменными типа "процедура"
ВАЖНО! Обратите внимание на директиву компилятора {$F+}. Она должна обязательно быть установлена (явно или неявно). Без нее скомпилироваться не удастся.

Код: Выделить всё

{$F+}

 {Описание типов данных "Процедура" }
type
  tProcType = procedure (wParam1 : word);
  tProcType2 = procedure;


procedure TestProc (wParam1 : word);
begin
  wParam1 :=  wParam1 + 1;
end;

procedure TestProc2;
var wParam : word;
begin
  wParam :=  28;
end;

var vProcVar : tProcType;
var vProcVar2 : tProcType2;

begin
 { Присваиваем переменой типа "Процедура" значение - адрес конкретной }
 { процедуры }
  vProcVar := TestProc;
  vProcVar2 := TestProc2;

 { А это вызов }
  vProcVar (28);
  vProcVar2;

end.

Добавлено: 25 окт 2006, 23:44
кирюша
нужно описать объектами и интересует то, как "грамотно" оформить данный метод (т.е. почему данный вызов, например, нецелесообразен)

Добавлено: 26 окт 2006, 09:58
BBB
кирюша, простите, тогда не понимаю, что именно вам нужно.
Я дал пример в ответ на вашу строку "обращение к переменной Процедурного типа".
Наверное, все-таки, не понял стоящую задачу.