#actionscript-3
#actionscript-3
Вопрос:
Это действительно глупый вопрос, но, возможно, кто-нибудь мог бы на него ответить.
Как я могу заменить
public function Mainclass()
{
Calculations.getDistance(5,9,4,2);
}
с чем-то вроде этого:
private var math:Class = Calculations;
public function Mainclass()
{
math.getDistance(5,9,4,2);
}
«:Class» не работает.
Я не ленив (лгу? :p), но я использую класс более 20 раз, и это выглядит лучше, если я заменю все эти длинные имена классов.
Ответ №1:
только что протестировано в моем проекте:
private var fn:Function;
/*...*/
fn = PlayerMenu.makeBtn;
var tf:TextField = new TextField();
addChild(tf);
fn(tf, new Point(500, 500), 'ololo');
работает нормально, однако не очень удобно, потому что FlashDevelop не выделяет аргументы
Комментарии:
1. Вы используете ссылку на функцию в классе PlayerMenu, я хочу ссылаться не на функцию, а на сам класс. Итак, не:
fn:Function
, ноclass:Class
. Но:Class
не работает.2. тем не менее, вы можете объявить переменную типа ‘Function` и сохранить в ней ссылку на желаемую статическую функцию, не совсем то, что вы хотели, но, имхо, это способ украсить и вызовы этих функций 😉