Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   object/array в качестве необязательного параметра (http://www.flasher.ru/forum/showthread.php?t=175426)

Monade 2 16.02.2012 20:28

object/array в качестве необязательного параметра
 
здравствуйте! у меня вопрос, как можно задать тип данных Object в качестве необязательного параметра функции:

Код AS3:

public function somefunc( a:int, b:int = 3, c:Object = {} ){
 
}

выдает ошибку 1047: Неизвестный инициализатор параметров, или не является константой времени компиляции.

та же петрушка с Array = []. здесь, видимо, какая-то принципиальная разница.

можно конечно использовать ...args , но хотелось бы знать наверняка, возможен ли мой подход в принципе? заранее спасибо за ответ :)

MikroAcse 16.02.2012 20:31

Код AS3:

public function somefunc( a:int, b:int = 3, c:Object = null){
 
}


КорДум 16.02.2012 20:31

Код AS3:

public function somefunc( a:int, b:int = 3, c:Objectnull){


Inet_PC 16.02.2012 20:31

null вместо {}
Опоздал.

MikroAcse 16.02.2012 20:32

Цитата:

Опоздал
Никогда не позно :)

Monade 2 16.02.2012 20:33

ого. оказывается, можно обойти как
Код AS3:

function somefunc( a:int, b:int = 3, c:Object = 0 ){
}

и при вызове и передаче объекта свойства сохраняются. только вопрос, насколько это корректно

КорДум 16.02.2012 20:33

Inet_PC, хех =)
Цитата:

только вопрос, насколько это корректно
Нормально. Object — базовый тип всех типов. Только null будет все же красивше и приятнее.

Monade 2 16.02.2012 20:33

а, null. точно, спасибо за оперативность :)

MikroAcse 16.02.2012 20:34

Цитата:

ого. оказывается, можно обойти как
А не легче использовать так:
Код AS3:

public function somefunc( a:int, b:int = 3, c:Object = null){
 c={}
}


Monade 2 16.02.2012 20:35

Цитата:

Сообщение от MikroAcse (Сообщение 1063448)
А не легче использовать так:
Код AS3:

public function somefunc( a:int, b:int = 3, c:Object = null){
 c={}
}


легче , да, просто про нулл забыл.

интересно кстати, почему вроде бы безобидное " {} " вызывает ошибки компилятора. ведь инициализировать простые типы данных-то можно без проблем


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

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