![]() |
Как получить приватную переменную из статик-функции внутри класса?
Привет!
Есть некий класс TTest.as. Код AS3:
1136: Incorrect number of arguments. Expected 1. При том что у TTest нет никаких переменных при инициализации. Что не так? Добавлено через 2 минуты Кстати, статической переменную libItems я тоже не могу сделать т.к. Вектору почему то она не нравится и вылетает другая более громоздкая ошибка о несовпадении типов. |
Не уверен, но похоже здесь надо использовать синглтон.
Класс TTest: Код AS3:
Код AS3:
P.S. Соглашусь с strangedk. Я бы тоже не стал в вашем случае использовать статические методы, синглтон и т.д. Раскажите подробнее как вы хотите использовать класс TTest? Зачем всей программе знать о нем? |
Полезность статики здесь сомнительна.
|
2 uglan
Статические функции работают только со статическими переменными. Никак не иначе. Если вектор по какой-либо причине не можете сделать статическим, оберните его в класс и сделайте экземпляр этого класса-обертки статическим в вашем рабочем классе. |
Цитата:
|
у Hemanth Sharma видел замечательный пример с таким же статическим обращением к базе текстур, только там они еще и кешируются, путем занесения в Dictionary. А ключем выступает имя переменной.
Очень удобно выходит. Разве что я бы ключи перенес в константы. Добавлено через 3 минуты а вот и примерчик: (пример для starling, но думаю суть понятна) Код AS3:
|
Цитата:
А в чем неудобство? Сделайте обычный класс для графики. Сделайте статический экземпляр этого класса в классе основного приложения. Обращайтесь к нему (экземпляру графики) откуда хотите через Package.MyMainClass.MyGraphicClass. |
Хороший пример:) Спасибо!
Только вот этот момент показался мне довольно хрупким Код AS3:
|
Так в этом весь фокус. Пока к текстуре не обращаются - она не будет занимать память.
А как только обратится кто-нибудь - то далее она будет браться уже из кеша. |
Цитата:
Добавлено через 1 минуту Цитата:
|
| Часовой пояс GMT +4, время: 21:54. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.