Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Передача функции указателя функцию (http://www.flasher.ru/forum/showthread.php?t=160023)

chuvak2008f 07.07.2011 23:05

Передача функции указателя функцию
 
Передачу функции аргумента функцию сделал

Код AS3:

function messageBox(messageText:String, funcOK:Function, funcCancel:Function):void {
}

Теперь главный вопрос, как задать значение передаваемой функции по умолчанию например так:

Код AS3:

function messageBox(messageText:String, funcOK:Function, funcCancel:Function = function() {}):void {
}

по идее вроде должно работать, но не пашет, как быть?
обычные переменные работают:

Код:

mess:String = "default"

i.o. 07.07.2011 23:18

Потому что, насколько помню, дефолтные значения могут быть только простыми (числа, строки...).

chuvak2008f 07.07.2011 23:26

о всё спасибо
false не пропёрла... за-то null заработал

Добавлено через 13 минут
Код AS3:

function qwe(funcCancel:Function = null):void {}

а как теперь выяснить, значение по умолчанию стоит (т.е. null) или реальную функцию определили???
По идее если NULL значит переменная очищается. Значит надо выяснить существует ли определённая функция.

alatar 08.07.2011 00:34

Код AS3:

if (funcCancel != null)
{
  ...
}


Котяра 08.07.2011 00:39

Код AS3:

if (!funcCancel) funcCancel=defaultCancelFunction;


chuvak2008f 08.07.2011 00:45

Всем спасибо чёт сразу не допёр))
делал так
Код AS3:

if (funcCancel)

ошибку показывала, походу без знаков никуда
ещё можно так:
Код AS3:

if (funcCancel is Function) funcCancel();



Часовой пояс GMT +4, время: 22:06.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.