Показать сообщение отдельно
Старый 17.04.2011, 19:53
Denis_ex вне форума Посмотреть профиль Отправить личное сообщение для Denis_ex Найти все сообщения от Denis_ex
  № 1  
Ответить с цитированием
Denis_ex

Регистрация: Aug 2009
Сообщений: 134
По умолчанию Отсутствие типа данных, при обращении к данным в SharedObject

Есть экземпляр gameData класса GameData, который содержит члены-переменные: level, score и пр.

Код AS3:
//Записываю gameData в SharedObject экземпляр:
 
var sharedObject:SharedObject = SharedObject.getLocal("profile");
sharedObject.data[“gameData”] = gameData;
 
//Далее перезапускаю игру и обращаюсь:
var sharedObject:SharedObject = SharedObject.getLocal("profile");
var gd: GameData = GameData (sharedObject.data.gameData);
//компилятор выдает ошибку, что не может привести тип к GameData, т.к. возвращаемый объект типа данных Object.
Фактически sharedObject.data.gameData – содержится объект типа Object, а не типа GameData, хотя и имеет все динамические члены-переменные (level, score) и пр.

Если сделать так, то все ок:
Код AS3:
var gd:*= sharedObject.data.gameData;
Почему, когда мы записывает экзепляр класса в SharedObject, то получаем на выходе тип Object, а не GameData ?


Последний раз редактировалось udaaff; 17.04.2011 в 20:06.