PDA

Просмотр полной версии : Вопрос по параметрам функции


Godwarlock
02.04.2015, 23:47
Всем привет. В общем возник такой вопрос. Есть функция в которую я передаю параметры к примеру

private function Fikus(param_1:int, param_2:int)
{
//Здесь вызову другой функции
if(param_1 == 0 && param_2 ==0)
{
AntiFikus();
}

}


Как мне использовать параметры param_1 и param_2 по всем функциям? Если я попробую сделать так
private function AntiFikus()
{
tes.text = param_1;
}

То флеш мне скажет, что такой переменной нету. Есть вариант конечно заранее создавать переменные
public var param_1:int;
publuc var param_2:int;

И уже в них заносить данные которые мы получаем в параметрах. Или мы можем передать при вызове функции, эти самые параметры, но что если параметры надо передавать по 10 функциям?) Но мне кажется есть способ попроще или может так сойдет?)

Wolsh
03.04.2015, 01:41
AntiFikus() является методом экземпляра, находится в теле класса. С какого бы перепугу ей знать локальные переменные другой функции? Нет. Либо переменные должны так же быть членами экземпляра, либо метод должен принимать параметры. Либо функция должна быть локальной, как и переменные. Но такого я, находясь в здравом уме, конечно не посоветую.

Godwarlock
03.04.2015, 15:23
Спасибо за разъяснение, в прочем так и предполагал. Ну да ладно)

ZackMercury
03.04.2015, 17:34
Ещё одна тема насчёт области видимости функций.
Есть вариант сделать класс с ключевым словом dynamic,
и после этого создавать у него свойства "на лету":


this.someVar = "someValue";


Добавлено через 25 минут
Правда самый достойный способ - передавать аргументом, а вот если уже нужно передавать сквозь 10 методов - это уже неправильная структура. :)