Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > BlitzMax > Модули для BlitzMax

Ответ
 
Опции темы
Старый 28.12.2010, 17:23   #1
Черный крыс
 
Сообщений: n/a
запись\чтение любого БМ обьекта.

Модуль юзает отражатель (brl.Reflection)

Данный модуль будет полезен для сохранения и загрузки игрового состояния (загрузить игру, сохранить игру - если тривиально). Вобсчем видел я буржуйский модуль, но тама он был жутко убогим, не умел сохранять\грузить многомерные массивы, не было оптимизации, и не было динамической поддержки композитных обьектов.

***здесь есть все (с)***
На то он и есть Reflector (c)
юзайте на здоровье.
докладывайте о багах сюда.
Вложения
Тип файла: rar reflector.mod.rar (58.4 Кб, 726 просмотров)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Randomize (29.12.2010)
Старый 28.12.2010, 17:28   #2
JeanWinters
Знающий
 
Регистрация: 22.12.2007
Сообщений: 223
Написано 22 полезных сообщений
(для 51 пользователей)
Ответ: запись\чтение любого БМ обьекта.

Если честно, то особо не ясна "полезность" отражения. В описании одна вода, что можно делать ссылку (указатель) на тип и еще какая-то писанина, которую перевел и еще меньше понял, чем оригинал.
(Offline)
 
Ответить с цитированием
Старый 28.12.2010, 17:36   #3
Черный крыс
 
Сообщений: n/a
Ответ: запись\чтение любого БМ обьекта.

оно дает программисту получить полное описание типа не зная при этом к какому типу принадлежит подопытный обьект.
 
Ответить с цитированием
Старый 28.12.2010, 17:57   #4
JeanWinters
Знающий
 
Регистрация: 22.12.2007
Сообщений: 223
Написано 22 полезных сообщений
(для 51 пользователей)
Ответ: запись\чтение любого БМ обьекта.

Может возвратить название типа в переменную? Т.е. это не кастинг уже? Хотя, я еще читал, что можно использовать отражение, чтобы "классы сами себя писали динамически".
(Offline)
 
Ответить с цитированием
Старый 28.12.2010, 21:08   #5
Reizel
Задрот
 
Аватар для Reizel
 
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений
(для 863 пользователей)
Ответ: запись\чтение любого БМ обьекта.

Мм...Все объекты тупо пишем в файл, потом при загрузке загружаем...гм, забавно
__________________
(Offline)
 
Ответить с цитированием
Старый 28.12.2010, 21:25   #6
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: запись\чтение любого БМ обьекта.

Вопрос: а ссылки внутри объектов на объекты после схоронения/загрузки не помирают ли?

Мимо проходил.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 28.12.2010, 22:59   #7
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: запись\чтение любого БМ обьекта.

Должны помирать, и вообще метод очень грубый.
__________________
(Offline)
 
Ответить с цитированием
Старый 28.12.2010, 22:59   #8
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: запись\чтение любого БМ обьекта.

Это так вообще можно память блоками дампать
__________________
(Offline)
 
Ответить с цитированием
Старый 13.01.2011, 18:52   #9
Черный крыс
 
Сообщений: n/a
Ответ: запись\чтение любого БМ обьекта.

<ЦИТАТА> Должны помирать, и вообще метод очень грубый. </ЦИТАТА>

Во первых ссылки не помирают, но если они зациклены - то это черевато зависанием. Если существует зацикленная структура данных - то грузите и сохраняйте отдельными функциями, яркий пример - стандартный TList. - Это все называется "Запись\Чтение композитных обьектов" - это когда внутри обьекта находятся другие обьекты. Смотрите []блин[/] сам модуль, и тогда все вопросы отпадут.

Насчет 2-го...

Ничего грубого в этом методе я не узрел. Большинство приложений пишут и грузят именно таким способом (смотри либу "universal save SDK"). Марк сделал аналог этой либы и назвал рефлекшн. =)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 12:56.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com