![]() |
Удаление объекта класса в методе класса
Привет! Проблема в удалении объекта класса из самого класса функция del(), что неправильно? а как надо? в помоще ничего не нашел.
Очень надо и не огорчите что так никак нельзя:umnik2: Код:
//S_C.asКод:
// 1.fla |
Господи, кто вас научил называть переменные транслитом? Гурский?
А имя класса «S_C» хоть что-нибудь говорит кому-нибудь, кроме создателя? Удалить экземпляр класса внутри класса нельзя — только удаление через delete извне. В твоем случае delete s1; и уменьшение параметра «chislo» на след. строке. |
Спасибо Денис, я не с такими классами работаю, просто наученный горьким опытом переписываю их в англоязычной форме, они у меня все по русски называются, класс с большой буквы, обьекты с маленькой, это во всех книгах рекомендуют.
|
класс:
Код:
class Test{Код:
import Test;Идея простая - нам надо направить вызов delete на сам объект. А насчет русских буков.. ЕЙ-богу, лучше транслитом.. |
таймлайн можно получить изнутри класса:
Код:
public function Test ( id:String) {Код:
var t1:Test = new Test( "t1"); |
Kikasso, что такое _target?
|
Цитата:
код в первом кадре: Код:
trace(_target); // выводит "/" То есть то самое место, где мы сказали Код:
var t1:Test = new Test("t1"); |
Ясно. Только неясно, почему это у тебя работает — свойство _target есть только у мувиклипов, кнопок и текстовых полей.
Впрочем, адресация слешами была ещё в 4-ой версии, можно забыть. |
Вложений: 1
Цитата:
Надо только помнить, что сам объект не убьется, пока не придет сборщик мусора и не увидит, что ссылок на объект больше нет. Код:
var t4 = t3; |
Смысл, который есть в _target можно узнать в хелпе. Из-за организации, все классы лежат внутри мувиков, поэтому там есть _target. Хотя по факту, свойство не должно быть определено в не-мувиклипах. Лучше не вспоминать методы четверки и пользовать обычный delete. Объект из памяти удалить так просто нельзя. Да и какой смысл вообще в методе del()? Я могу его вызвать в совершенно ином месте для удаления ссылки на объект в том месте, где он был создан. А там, где я вызвал этот метод останется ссылка на него. Не заморачивайся :)
|
| Часовой пояс GMT +4, время: 20:01. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.