![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|
|
|||||
![]() Ну если опять та же фигня получится, то, конечно, есть такой риск ![]()
__________________
Work not wolf - in forest no run |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
Цитата:
кто ж виноват, что вы тут строчите как электровеники ? :)) ...и потом, все что ты сказал против АС - пока что основано на том, что ты считаешь, что ....... ___________________________ объясняю насчет индексов и строк (в дополнение к тому, что сказал иша :)) ) a = new Array(3); // ...индекс числом a[1] = 666; // ...дает код :: constants 'a', 'Array' push 'a', 3, 1, 'Array' new setVariable push 'a' getVariable push 1, 666 setMember a = new Array(3); // ...индекс строкой a["1"] = 666; // ...дает код :: constants 'a', 'Array', '1' push 'a', 3, 1, 'Array' new setVariable push 'a' getVariable push '1', 666 setMember Последний раз редактировалось Nox Noctis; 06.09.2002 в 21:18. |
|
|||||
|
Регистрация: Oct 2001
Адрес: в Петербурге
Сообщений: 2,430
|
Насчет "массивов" это все, конечно, верно, но лично для меня в АС неудобна следующая "фишка":
В АС нет такой вещи, как указатель или оператор ссылки (в Си++ - &). И все присваивания по ссылке/по значению происходят автоматически. Как это реализуется: obj={a:10}; objRef=obj; objRef.a++; trace(obj.a); // выдает 11. Типичный пример автоматического присваивания адреса объекта, а не его содержимого другой переменной при прямом присваивании, даже, если переменная - объект того же класс. Это справедливо, хотя бывает неудобно при копировании массивов ("массив" - объект класса Array). Поэтому пригодиться такой код: Array.prototype.copy=function(a) { this.splice(0); for(i=0;i<a.length;i++) { this[i]=a[i]; } }; Как пользоваться можно догадаться. Отступление: в случае копирования объектов оператором присваивания пригодилась бы возможность перегрузки функций, которая повлекла бы за собой введение типов данных, что сделало бы АС неудобным для "легких" скриптов. ... Хуже становится, когда надо передать ссылку на скаляр (строку или число), а они при присваивании/передачи в ф-цию копируются и передают значение. Это совсем хреново, так как иногда требуется строгая независимость объектов, но одни объекты должны передавать другим ссылки на свои элементы, причем имена этих эл-тов должны быть известны только содержащему их объекту. А если такой элемент - скаляр? Такие дела. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
насчет указателей - это да :) согласен :)
|
|
|||||
|
Регистрация: Feb 2002
Адрес: Kyiv
Сообщений: 173
|
2 Useless,baltika, ihorko....
ути-пути какие мы доброжелатели пахнет стрелкой. уже готовы мне в репу дать? лол сплошной2 Nox Noctis чего это вы написали, я ничего не понял. на ассемблер немного похоже. если можно - объясните. а то на глупости какието похоже для таких не просвещенных как я как я и догадывался тут все флэшеры до мозга кости и никто не понял что я имею ввиду под поиском по строкам. а имел ввиду я вот что: если индекс массива - число (DWORD например), то для сравнения индекса требуется примерно такой код а если индекс - строка (как во флеш) а для сравнения парой команд не отделатся, а надо организовывать цикл проверки, и чем больше число (больше цифр) - тем длиннее строка, тем больше операций надо выполнить для каждого сравнения индекса. таким образом с возрастанием количества элементов массива увеличивается количество операций при поиске элемента с необходимым индексом, следовательно на это требуется больше времени. вот собственно то, что я имел под тормозами, и совсем не могу понять, что вы хотели донести мне ув. Nox Noctis своими фрагментами кода 2 Useless и не надо принимать мои самовосхваления так близко к сердцу - если сам себя не похвалишь - никто тебя не похвалит . если вас задело то, что я решил посотрясать воздух - просто не заходите на этот топик. к вашему сведению тут на форуме 90% постов - безосновательное сотрясение воздуха, а то что я хотел услышать разные мнения по столь наболевшему вопросу - так это МОЕ ПРАВО и прошу не вмешиватся, если вам нечего сказатьP.S. Связь с внешним миром у меня оборвалась (инет), поэтому я врядли смогу вовремя отвечать на все ваши посты. кстати официально я уже не флешер, отчасти изза всего того, что я написал в этом топике, поэтому попрошу не обвинять меня в безосновательности и сотрясании воздуха, этот вопрос ДЕЙСТВИТЕЛЬНО меня очень волнует. 2 Nox Noctis меня особенно интересуют ваши разъяснения.
__________________
нам показалось, что это конец... но оказалось, что не казалось... |
|
|||||
|
Регистрация: Mar 2002
Сообщений: 204
|
2infinity:
Флэш - это не построчный интерпретатор, а компилирующий. ActionScript, который лежит во FLA, при компилируется в байт-код, в SWF. Этот то байт-код и исполняется флэшовой виртуальной машиной. И Nox Noctis совершенно справедливо написал, в какой именно байт-код превращается обращение к элементам массива по числовым индексам, воспользовавшись мнемониками FLASMa (Flash Assembler). И приведенный код как раз явно показывает, что там, где вы заподозрили обращение к элементам массива по строчным индексам, на самом деле, происходит обращение по числовым... |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
есть такая хреновина - Flash Virtual Machine... ее приводи в движение плеер или плагин...
и вот она занимается тем, что исполняет байткод который накомпилили всякие шибко умные ребята :)) то, что я привел - это визуальное представление этого самого байткода... стек, регистры, и проч... почти как обычный ассемблер... вобщем, DMN меня понял :) см. его сообщение :) все собсно... не смею более вмешиваться в ваше самоубежденное самовосхищение :) Последний раз редактировалось Nox Noctis; 09.09.2002 в 17:47. |
|
|||||
|
некрофил
Регистрация: Mar 2002
Адрес: ...по колено в кровище...
Сообщений: 2,292
|
Я пришел. В кого стрелять?
__________________
...убивать людей не удовольствия ради, но для еды. |
|
|||||
|
Цитата:
__________________
Work not wolf - in forest no run |
|
|||||
|
Регистрация: Feb 2002
Адрес: Kyiv
Сообщений: 173
|
обидно, что никто так ничего и не понял.
могу вас поздравить - все вы настоящие флешеры ![]() и наверняка не представляете о том как работают настоящие программы (не скрипты). мои аргументы касательно сравнения никакой реакции не вызвали, по видимому изза того, что никто ничего не понял иначе в меня не бросались бы кодами виртуальной машины, а поняли бы что я говорю о недостатках реализации именно этой машины, а не генерируемых байт - кодов2 DMN вы знаете, я конечно подозревал, но боялся подумать, что ActionScript компилируется в байт код Цитата:
)если хоть ктото поймет - буду рад выслушать аргументы ![]()
__________________
нам показалось, что это конец... но оказалось, что не казалось... |
|
|||||
|
Регистрация: Mar 2002
Сообщений: 204
|
Млин... Ну не адресуйся ты к элементам массива по строчным индексам - адресуйся по числовым. И все будет чики-поки, и не будет там строк...
__________________
--- 8< --- 8< --- 8< --- |
|
|||||
|
Регистрация: Aug 2001
Адрес: vg
Сообщений: 352
|
2 infinity и где мы такие умные КМБ проходили, про компиляторы и всё такое.
|
|
|||||
|
Регистрация: Jan 2002
Адрес: Necropolis
Сообщений: 248
|
2infinity: Я поражаюсь твоей стойкости!
Сколько тебе уже надолбили кода про то, что числовые индексы не хранятся, как строки , ты всё на своём стоишь... Так держать! |
|
|||||
|
некрофил
Регистрация: Mar 2002
Адрес: ...по колено в кровище...
Сообщений: 2,292
|
Цитата:
__________________
...убивать людей не удовольствия ради, но для еды. |
![]() |
Часовой пояс GMT +4, время: 21:03. |
|
|
« Предыдущая тема | Следующая тема » |
|
|