Показать сообщение отдельно
Старый 03.09.2008, 16:20
Visual вне форума Посмотреть профиль Отправить личное сообщение для Visual Найти все сообщения от Visual
  № 10  
Ответить с цитированием
Visual
 
Аватар для Visual

Регистрация: Sep 2008
Сообщений: 17
Цитата:
Сообщение от __etc Посмотреть сообщение
Уже обсуждалось это. Вы потом не отпишетесь от таких функций, потому что у вас не будет ссылок на них, а значит ваши спрайты и объекты будут висеть в памяти, что плохо сказывается на общей производительности. Вложенные функции можно создавать лишь в том случае, если они только вычисляют некоторое значение на основе пришедших параметров и всё. Да и то, их лучше заменить статическими функциями. Я уже не говорю про возможные проблемы с областями видимости.
Напишите пожалуйста как правильно должен быть этот код, чтоб потом после обнуления класса он без проблем удалился Сборщиком Мусора :

Код:
package main{

	import flash.display.MovieClip;
	import flash.events.*;
	import flash.display.Sprite;

	public class Window extends MovieClip {

		public function window() {

			wtitle.addEventListener(MouseEvent.MOUSE_DOWN, handleMouseDown);
			wtitle.addEventListener(MouseEvent.MOUSE_UP, handleMouseUp);
			wtitle.buttonMode = true;

			function handleMouseDown(evt:Event):void {

				startDrag();

			}

			function handleMouseUp(evt:Event):void {

				stopDrag();

			}
		}
	}
}