Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   trace влияет на работоспособность (http://www.flasher.ru/forum/showthread.php?t=143676)

FriOne 22.08.2010 23:28

trace влияет на работоспособность
 
Функция работает рекурсивно, и когда я вызываю ее два раза по нажатию, она работает только если напишу trace, то есть так:
Код AS1/AS2:

trace("Here:"+(last_pic++));
load_line(line,line_number,(last_pic++));

А так работает только первый раз:
Код AS1/AS2:

load_line(line,line_number,(last_pic++));

Подскажите в чем косяк не пойму..

Добавлено через 3 минуты
Забыл написать.. last_pic не прибавляет значение для нижнего варианта

Добавлено через 10 минут
Как бы сделал, чтобы работало, изменил "++" на "+1", но все таки интересно почему не работает с "++"...

Psycho Tiger 22.08.2010 23:42

i++ - постфиксный оператор.
Код AS1/AS2:

var i:Number=3;
trace(i++); //3
trace(i); //4

Это аналогично
Код AS1/AS2:

var i:Number=3;
trace(i); //3
i+=1;
trace(i); //4

(на самом деле в байткоде различия есть, но всем плевать)
Т.е. инкримент произойдёт после того, как отработает эта строчка кода.
Есть префиксный инкримент:
Код AS1/AS2:

var i:Number=3;
trace(++i); //4

Аналогично
Код AS1/AS2:

var i:Number=3;
i+=1;
trace(i); //4

И он отработает до того, как начнется обработка строчки.

И повнимательней - ++i меняет значение i, в то время как i+1 просто возвращает результат на единицу больше.

FriOne 23.08.2010 00:18

Спасибо теперь понял..
Цитата:

И повнимательней - ++i меняет значение i, в то время как i+1 просто возвращает результат на единицу больше.
Хорошо, что функция рекурсивная)

Добавлено через 2 минуты
Столько лет знаю i++ и только сейчас узнал, что можно еще и ++i ) гуд, спасибо


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

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