![]() |
|
||||||||||
|
|
|
|||||
|
блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
|
Я бы предложил такое:
private var assetClassInfo:Object = {"var1":Sprite, "var2":Shape}; private var var1:Sprite; private var var2:Shape;//да, дублирование, гадость, но жить можно private function checkObj(...objs):void { for each(var s:String in objs) { if(!this[s]) this[s] = new assetClassInfo[s]; } } //использование public function functionWithVar2(whatever:Whatever):WhateverElse { checkObj("var2"); //var2 определена }
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают. |
|
||||||
|
Регистрация: Jun 2011
Сообщений: 31
|
Это опечатка в посте, будем считать ее в данном контексте псевдо-кодом
![]() Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Последний раз редактировалось Zolza; 25.06.2011 в 17:15. |
|
|||||
|
Регистрация: Mar 2010
Сообщений: 137
|
|
|
|||||
|
Nooob
Null тк преобразование неудачное. Нельзя экземпляр класса в строку преобразовывать. Для этого есть toString(). Zolza typeOf - как уже сказали - оператор, он различает всего 12 типов данных. Вы тут обсуждает как "правильно" писать быдлокод? Пытаетесь переложить функцию определения типа данных на компилятор? Почему бы не ввести новый тип данных, вроде псевдо булевских переменных, или что-то из "стохастического программирования"? Не хотел бы я разбираться в Вашем коде. Пока не отработал конструктор - нет никакого класса. В коде, опледеление типа нужно только для того чтоб компилятор работал как надо, чтоб не тратить часы на RTE. Не нравятся типизированные переменные, пользуйтесь нетипизированными (динамическими). (как вариант храните тип в имени переменной)
__________________
RTFM Последний раз редактировалось S-ed; 26.06.2011 в 13:30. |
|
|||||
|
Регистрация: Jun 2011
Сообщений: 31
|
S-ed, какой быдлокод, какое стахановское программирование?
|
|
|||||
|
Banned
Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Цитата:
|
|
|||||
|
Zolza
Вы хотели пул объектов без самих объектов. Вот через Object: var objectsArray:Object = new Object; for(var i = 0; i < 5; i++){ objectsArray["myVariableNum_" + i] = new Sprite; } for(var obj in objectsArray){ trace(obj, "=", objectsArray[obj]); }
__________________
RTFM Последний раз редактировалось S-ed; 26.06.2011 в 11:51. Причина: забыл трейс |
|
|||||
|
Регистрация: Jun 2011
Сообщений: 31
|
Вообще, с моим подходом, я много чего хотел "без самих объектов". С этим разобрался.
Цитата:
|
|
|||||
|
блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
|
goodguy - Object, Dictionary и Array - ассоциативные массивы.
А вообще по-моему автору надо писать и не страдать фигнёй. Это писать практически так же быстро, как и checkObj(var2), даже если там штук 5-10 таких переменных, но понятнее и работает быстрее.
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают. |
|
|||||
|
-De-
Вы взяли код из #6? =) "Человеку" хочется чтоб он мог отличить var2 от var1 когда передает их в функцию.
__________________
RTFM Последний раз редактировалось S-ed; 26.06.2011 в 12:19. |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:17. |
|
|
« Предыдущая тема | Следующая тема » |
| Теги |
| typeof() , извлечение типа |
| Опции темы | |
| Опции просмотра | |
|
|