Показать сообщение отдельно
Старый 03.09.2013, 14:01
Fogflasher вне форума Посмотреть профиль Отправить личное сообщение для Fogflasher Найти все сообщения от Fogflasher
  № 1  
Ответить с цитированием
Fogflasher

Регистрация: Mar 2013
Сообщений: 290
По умолчанию Array: передача массива в функцию по дефолту

Есть несколько массивов, содержащих в себе мувиклипы, допустим:
Код AS1/AS2:
mcArray1 = new Array(); 
mcArray2 = new Array(); 
mcArray3 = new Array(); 
mcArray4 = new Array(); 
mcArray5 = new Array();
Есть функция, которая в качестве параметра принимает произвольный массив, допустим:
Код AS3:
private function mcPlayer(arr:Array)
{
   //  ...
}
И допустим, в некоторый момент нужно вызвать эту функцию, не передавая ей конкретное значение массива.
Чтобы она сама выбрала некое дефолтное значение. Получится, например, так:

Код AS3:
mcPlayer();
а функцию, стало быть, нужно переопределить так:
Код AS3:
private function mcPlayer(arr:Array = mcArray1)
{
   //  ...
}
Однако, получаем ошибку:
Цитата:
1047: Parameter initializer unknown or is not a compile-time constant.
Возникают вопросы:
- что не так с передачей дефолтного параметра?
- каким образом, по классике, решается подобная задача?