Показать сообщение отдельно
Старый 21.10.2004, 18:22
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 1  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
По умолчанию [mx 2004] новости граблестроения

полтора года прошло со времени предыдущего выпуска.

стоит отметить появление в природе свежих модных граблей.

написали:
Код:
class Wrong {
	static var properties:Object = new Object();	
	function setProperty(name, value) {		
		Wrong.properties [name] = value;
	}
}
вроде всё пучком, компилятор не ругается, солнышко пригревает, работать не хочется...

проверяем:
Код:
test = new Wrong();
test.setProperty("blubbering icky thing", "i'm alive!");
trace(Wrong.properties);
for (var i in Wrong.properties) {
	trace(i+" :: "+Wrong.properties[i]);
}
хмм. думаем. запускаем еще пару раз. еще думаем.

работать становится интереснее, солнышко начинает раздражать.

декомпилируем. (здесь показан результат полученный при помощи FLARE )
видим:
Код:
  frame 1 {
    test = new Wrong();
    test.setProperty('blubbering icky thing', 'i\'m alive!');
    trace(Wrong.properties);
    for (var i in Wrong.properties) {
      trace(i + ' :: ' + Wrong.properties[i]);
    }
  }

  movieClip 1 __Packages.Wrong {

    #initclip
      if (!_global.Wrong) {
        var v1 = function () {};

        _global.Wrong = v1;
        var v2 = v1.prototype;
        v2.setProperty = function (name, value) { 
          Wrong.properties.name = value; 
        }; 

        v1.properties = new Object();
        ASSetPropFlags(_global.Wrong.prototype, null, 1);
      }
    #endinitclip
  }
думаем "наверно я чего-то не понимаю". пишем так:

Код:
class Wrong {
	static var properties:Object = new Object();	
	function setProperty(name, value) {		
		properties[name] = value;
	}
}
проверяем.

закрываем флэш, выключаем комп, идем пить пиво.
Вложения
Тип файла: zip grabli2.0.zip (10.7 Кб, 91 просмотров)


Последний раз редактировалось Nox Noctis; 21.10.2004 в 18:31.