Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.03.2012, 20:31
AlexFrost вне форума Посмотреть профиль Найти все сообщения от AlexFrost
  № 21  
Ответить с цитированием
AlexFrost
Banned

Регистрация: Jan 2012
Сообщений: 25
HardCoder.
На пальцах:
Предложенный вариант:
Код AS3:
private static const CAS:Vector.<Class> = new <Class>
		[ca1, ca2, ca3, ca4, ca5, ca6, ca7, ca8, ca9, ca10, ca11, ca12, 
		ca13, ca14, ca15, ca16, ca17, ca18, ca19, ca20, ca21, ca22, ca23, ca24, 
		ca25, ca26, ca27, ca28, ca29, ca30, ca31, ca32, ca33, ca34, ca35, ca36,ca37
                ca38,ca39,ca40,ca41,ca42,ca43,ca44,ca45,ca46,ca47,ca48,ca49,ca50,ca51,ca52,ca53,ca54,ca55,
                ca56,ca57,ca58,ca59,ca60, ca61, ca62, ca63, ca64];
public function Main():void 
		{
new ca1; new ca2; new ca3; new ca4; new ca5; new ca6; new ca7; new ca8; new ca9; new ca10;
new ca11; new ca12; new ca13; new ca14; new ca15; new ca16; new ca17; new ca18; new ca19;
new ca20; new ca21; new ca22; new ca23; new ca24; new ca25; new ca26; new ca27; new ca28;
new ca29; new ca30; new ca31; new ca32; new ca33; new ca34; new ca35; new ca36; new ca37;
new ca38; new ca39; new ca40; new ca41; new ca42; new ca43; new ca44; new ca45; new ca46;
new ca47; new ca48; new ca49; new ca50; new ca51; new ca52; new ca53; new ca54; new ca55;
new ca56; new ca57; new ca58, new ca59; new ca60; new ca61; new ca62; new ca63; new ca64;
 
var newCa:MovieClip = new CAS[i]();	
_CAS.push(newCa);
}
Мой вариант:
Код AS3:
private static const CAS:Vector.<Class> = new <Class>
		[ca1, ca2, ca3, ca4, ca5, ca6, ca7, ca8, ca9, ca10, ca11, ca12, 
		ca13, ca14, ca15, ca16, ca17, ca18, ca19, ca20, ca21, ca22, ca23, ca24, 
		ca25, ca26, ca27, ca28, ca29, ca30, ca31, ca32, ca33, ca34, ca35, ca36,ca37
                ca38,ca39,ca40,ca41,ca42,ca43,ca44,ca45,ca46,ca47,ca48,ca49,ca50,ca51,ca52,ca53,ca54,ca55,
                ca56,ca57,ca58,ca59,ca60, ca61, ca62, ca63, ca64];
public function Main():void 
		{
var caName:String = getQualifiedClassName(CAS[i]);
var caClass:Class = getDefinitionByName(caName) as Class;
var newCa:MovieClip = new caClass();
_CAS.push(newCa);
}
Да, действительно ВАШ КОРОЧЕ! ОФИГЕННО КОРОЧЕ!
А ещё возьмите имена классов не ca1234 а другие как например stfu_or_die. Да вы запаритесь вносить новые элементы уже на третьем десятке.


Последний раз редактировалось AlexFrost; 12.03.2012 в 20:35.
Старый 12.03.2012, 20:44
AlexFrost вне форума Посмотреть профиль Найти все сообщения от AlexFrost
  № 22  
Ответить с цитированием
AlexFrost
Banned

Регистрация: Jan 2012
Сообщений: 25
я прекрасно понимаю про лишние вычисления.
но само по себе приложение - маленькое. даже с х00 такими классами - оно не загружает процессор больше чем на 6-8%.
А комп мой ещё 4 года назад стоил 10к. Можете представить себе его конфиг.
а вот ДОБАВЛЯТЬ эти х00 классов в список при таком решении - очень удобно.
Достаточно держать FD открытым и подписывать вновьсозданные классы из IDE.

Старый 12.03.2012, 20:47
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 23  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Цитата:
Сообщение от AlexFrost Посмотреть сообщение
Да, действительно ВАШ КОРОЧЕ! ОФИГЕННО КОРОЧЕ!
Неудачный у вас сарказм... Потому что такой (перевый) вариант вам никто не предлагал. Вам предложили:
Код AS3:
private static const CAS:Vector.<Class> = new <Class>
		[ca1, ca2, ca3, ca4, ca5, ca6, ca7, ca8, ca9, ca10, ca11, ca12, 
		ca13, ca14, ca15, ca16, ca17, ca18, ca19, ca20, ca21, ca22, ca23, ca24, 
		ca25, ca26, ca27, ca28, ca29, ca30, ca31, ca32, ca33, ca34, ca35, ca36,ca37
                ca38,ca39,ca40,ca41,ca42,ca43,ca44,ca45,ca46,ca47,ca48,ca49,ca50,ca51,ca52,ca53,ca54,ca55,
                ca56,ca57,ca58,ca59,ca60, ca61, ca62, ca63, ca64];
public function Main()
		{
		for (var i:uint = 0; i < CAS.length; i++){
				var newCa:MovieClip = new CAS[i]();	
				_CAS.push(newCa);
		}
}
__________________
Я мало чего умею, но зато хорошо умею учиться...


Последний раз редактировалось HardCoder; 12.03.2012 в 20:54.
Старый 12.03.2012, 20:50
AlexFrost вне форума Посмотреть профиль Найти все сообщения от AlexFrost
  № 24  
Ответить с цитированием
AlexFrost
Banned

Регистрация: Jan 2012
Сообщений: 25
Цитата:
Сообщение от HardCoder Посмотреть сообщение
Неудачный у вас сарказм... Потому что такой (перевый) вариант вам никто не предлагал. Вам предложили:
Код AS3:
private static const CAS:Vector.<Class> = new <Class>
		[ca1, ca2, ca3, ca4, ca5, ca6, ca7, ca8, ca9, ca10, ca11, ca12, 
		ca13, ca14, ca15, ca16, ca17, ca18, ca19, ca20, ca21, ca22, ca23, ca24, 
		ca25, ca26, ca27, ca28, ca29, ca30, ca31, ca32, ca33, ca34, ca35, ca36,ca37
                ca38,ca39,ca40,ca41,ca42,ca43,ca44,ca45,ca46,ca47,ca48,ca49,ca50,ca51,ca52,ca53,ca54,ca55,
                ca56,ca57,ca58,ca59,ca60, ca61, ca62, ca63, ca64];
public function Main():void 
		{
		for (var i:uint = 0; i < CAS.length; i++){
				var newCa:MovieClip = new CAS[i]();	
				_CAS.push(newCa);
		}
}
значит я не верно понял. потому как там было по-другому написано. приношу извинения.

Старый 12.03.2012, 21:12
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 25  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Цитата:
Сообщение от Ohcysp Regit Посмотреть сообщение
1) Инклудь всю либу целиком со всеми классами
2) http://etcs.ru/blog/as3/getdefinitionnames/
3) Создавай списки по нужному признаку, создавай объекты из нужных списокв

В итоге не нужно писать эти 64 класса в массиве или stfu_or_die
Ohcysp Regit, я не использовал этот класс, поэтому могу ошибаться. Но мне кажется, что здесь он не совсем подойдет. Ведь, как я понял из описания - он возвращает список всех классов в конкретном домене, или же список linked классов конкретного домена вцелом. То есть: если у нас есть одна флешка с внедренными классами из 10 библиотек, то мы не получим список классов только из одной конкретной библиотеки, с которой нам нужно, а получим из всех библиотек. Поэтому такой список нужно создавать вручную так или иначе (словарь, массив, вектор...кому как нравится). Если ошибаюсь, пусть Денис или Ohcysp Regit поправят.

Добавлено через 3 минуты
Хотя, думаю, AlexFrost сам должен определиться - что именно ему больше подходит. Так как неизвестна структура его проекта и цели.
__________________
Я мало чего умею, но зато хорошо умею учиться...


Последний раз редактировалось HardCoder; 12.03.2012 в 21:18.
Создать новую тему Ответ Часовой пояс GMT +4, время: 08:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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