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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 31.07.2012, 14:16
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 1  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
По умолчанию Проблема с Unshift и Push в Vector

имеется код, в нем видно странный эффект, что когда мы unshift-им нулевой элемент из этого же вектора, а потом делаем push в 0 элемент, push также действует на первый элемент.

можно ли как то избежать этого эффекта, этот пример нечто вроде сохранения координат точек, координаты точек лежат в v[0], при изменении координат , v[0] должен переместиться в 1 элемент вектора, а все последующие элементы должны встать в позицию текущая+1, а затем в нулевом элементе нужно поменять координаты, не меняя во втором.. надеюсь я понятно объяснил.

Код AS3:
var v = new Vector.<Vector.<int>>(5);
v[0] = new Vector.<int>(5);
v[1] = new Vector.<int>(5);
v[2] = new Vector.<int>(5);
v[3] = new Vector.<int>(5);
v[4] = new Vector.<int>(5);
v[0][0] = 0;
v[0][1] = 0;
v[0][2] = 0;
v[0][3] = 0;
v[0][4] = 0;
 
v[1][0] = 1;
v[1][1] = 1;
v[1][2] = 1;
v[1][3] = 1;
v[1][4] = 1;
 
v[2][0] = 2;
v[2][1] = 2;
v[2][2] = 2;
v[2][3] = 2;
v[2][4] = 2;
 
v[3][0] = 3;
v[3][1] = 3;
v[3][2] = 3;
v[3][3] = 3;
v[3][4] = 3;
 
v[4][0] = 4;
v[4][1] = 4;
v[4][2] = 4;
v[4][3] = 4;
v[4][4] = 4;
 
v.unshift(v[0]);
v[0].push(1);
 
trace(v[0]);
trace(v[1]);
trace(v[2]);
trace(v[3]);
trace(v[4]);
 
//0,0,0,0,0,1
//0,0,0,0,0,1
//1,1,1,1,1
//2,2,2,2,2
//3,3,3,3,3

Создать новую тему   Часовой пояс GMT +4, время: 14:49.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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