Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2013, 15:59   #1
pascal1992
Пользователь
 
Регистрация: 17.03.2013
Сообщений: 18
По умолчанию Процедурный тип

Помогите пжл с процедурным типом. Желательно с хорошим примерчиком)
pascal1992 вне форума Ответить с цитированием
Старый 17.03.2013, 16:07   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
program project;

{$mode objfpc}{$H+}

uses
  Classes, SysUtils;
type
  p=procedure;

  procedure ok(pp:p);
  begin
    write('Вызываем процу:');
    pp;
  end;

  procedure doo;  begin    write('№1');  end;
  procedure doo2;  begin    write('№2');  end;

begin
  ok(doo); //Вызываем калбэки
  ok(doo2);//Вызываем калбэки
  readln;
end.
Подходит?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.03.2013, 16:18   #3
pascal1992
Пользователь
 
Регистрация: 17.03.2013
Сообщений: 18
По умолчанию

а чем обусловлен такой подход? чем он удобен?
pascal1992 вне форума Ответить с цитированием
Старый 17.03.2013, 16:46   #4
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Это единственный способ вызвать процедуру неизвестную на момент компиляции.
s-andriano вне форума Ответить с цитированием
Старый 17.03.2013, 17:00   #5
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
Это единственный способ вызвать процедуру неизвестную на момент компиляции.
А как же forward ?
Poma][a вне форума Ответить с цитированием
Старый 17.03.2013, 17:06   #6
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от Poma][a Посмотреть сообщение
А как же forward ?
forward к данному вопросу никакого отношения не имеет.
s-andriano вне форума Ответить с цитированием
Старый 17.03.2013, 17:30   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А как же forward ?
Форварды все равно становятся отрезольвенными на момент сборки после компиляции, а callback процедуры, которые и нужны автору даже на момент выполнения могут быть неизвестными программе.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
процедурный тип lilywka Помощь студентам 2 03.12.2012 00:16
Процедурный тип Sweet-_-Orange Помощь студентам 3 01.02.2012 21:16
Процедурный тип. Интегралы. kuy Паскаль, Turbo Pascal, PascalABC.NET 2 26.11.2011 00:11
Процедурный тип в Delphi <Maria> Помощь студентам 1 14.11.2010 18:03
Процедурный тип в C++Builder sneksnek2006 C++ Builder 4 14.10.2010 10:46