Показать сообщение отдельно
Старый 03.06.2016, 12:10
Korchy вне форума Посмотреть профиль Отправить личное сообщение для Korchy Найти все сообщения от Korchy
  № 4  
Ответить с цитированием
Korchy
 
Аватар для Korchy

Регистрация: May 2011
Сообщений: 301
Записей в блоге: 2
Это указатель на функцию. Функция в AS такой же объект, как и переменные или экземпляры классов. Соответственно указатель на нее можно передать куда-нибудь, чтобы потом выполнить эту функцию откуда передали.
Ндуманный пример: есть объекты класса Кошка, класса Собака и класса Кормушка. Допустим чтобы зверь мог проверять, есть ли в кормушке корм, у Кошки и Собаки есть указатель на кормушку и возможность вызова метода Кормушка->ЧекКорм(). После проверки, если кормушка пуста, Собака должна сказать "Гав" а Кошка - "Мяу". Тогда при вызове проверки в метод проверки можно передать функцию издавания нужного звука, примерно так: Кормушка->ЧекКорм(Собака->СкажиГав) или Кормушка->ЧекКорм(Кошка->СкажиМяу). Такой переданный указатель на функцию (Собака->СкажиГав) называют каллбэком (функцией обратного вызова). Внутри метода ЧекКорм по завершении проверки if(Пусто) {Выполнить каллбэк по переданному указателю}.
В общем виде как-то так
__________________
interplanety