Показать сообщение отдельно
Старый 05.04.2013, 17:12
Александр Мостовой вне форума Посмотреть профиль Отправить личное сообщение для Александр Мостовой Посетить домашнюю страницу Александр Мостовой Найти все сообщения от Александр Мостовой
  № 2  
Ответить с цитированием
Александр Мостовой
 
Аватар для Александр Мостовой

Регистрация: Sep 2001
Адрес: Харьков
Сообщений: 305
Отправить сообщение для Александр Мостовой с помощью ICQ Отправить сообщение для Александр Мостовой с помощью Skype™
Не очень понял всю описанную схему, отвечу про то что понял
Код AS3:
(обьявлены в документ-классе как public var)
Вероятно вы путаете понятие глобальной и публичной переменно
В AS3 практически нет глобальных переменных
Это лишь trace, setTimeot, setInterva, getTimer
(Которые на самом деле функции, но и переменными он также являются )

Что бы обратиться к публичной переменной нужно иметь инстанс основного класса либо проделать это через DisplayObject метод

Код AS3:
var main:Main = parent.parent.parent as Main;
if (main.end_frame == ...)
(или через root)


Глобальные переменные реализуются в AS3 через статические свойства
Код AS3:
public static var myVar:Number
Доступ к ним вдлальнейшем можно получить не имея экземпляра класса через конструктор класса MyClass.myVar
(Math.random() пример статического метода)

Но статическими свойствами пользоваться тоже не очень хорошая практика, в основном используются константы.
Обычно для таких целей используют паттерн программирования Singleton - это паттерн которые позволяет иметь только один экземпляр класса и получить к нему доступ из любого участка кода

Код AS3:
var config:Config = Config.instance;
config.myVar ...
//instance - где инстанс статическое свойство ссылающийся на единственный экземаляр класса конфиг. (т.е. в конструкторе класса Confis стоит instance = this
Вообще существет очень мног оспособов реализации синглетона
__________________
...


Последний раз редактировалось Александр Мостовой; 05.04.2013 в 17:28.