запись\чтение любого БМ обьекта.
Вложений: 1
Модуль юзает отражатель (brl.Reflection)
Данный модуль будет полезен для сохранения и загрузки игрового состояния (загрузить игру, сохранить игру - если тривиально). Вобсчем видел я буржуйский модуль, но тама он был жутко убогим, не умел сохранять\грузить многомерные массивы, не было оптимизации, и не было динамической поддержки композитных обьектов. ***здесь есть все (с)*** На то он и есть Reflector (c) юзайте на здоровье. докладывайте о багах сюда. |
Ответ: запись\чтение любого БМ обьекта.
Если честно, то особо не ясна "полезность" отражения. В описании одна вода, что можно делать ссылку (указатель) на тип и еще какая-то писанина, которую перевел и еще меньше понял, чем оригинал. :-)
|
Ответ: запись\чтение любого БМ обьекта.
оно дает программисту получить полное описание типа не зная при этом к какому типу принадлежит подопытный обьект.
|
Ответ: запись\чтение любого БМ обьекта.
Может возвратить название типа в переменную? Т.е. это не кастинг уже? Хотя, я еще читал, что можно использовать отражение, чтобы "классы сами себя писали динамически".
|
Ответ: запись\чтение любого БМ обьекта.
Мм...Все объекты тупо пишем в файл, потом при загрузке загружаем...гм, забавно :)
|
Ответ: запись\чтение любого БМ обьекта.
Вопрос: а ссылки внутри объектов на объекты после схоронения/загрузки не помирают ли?
Мимо проходил. |
Ответ: запись\чтение любого БМ обьекта.
Должны помирать, и вообще метод очень грубый.
|
Ответ: запись\чтение любого БМ обьекта.
Это так вообще можно память блоками дампать
|
Ответ: запись\чтение любого БМ обьекта.
<ЦИТАТА> Должны помирать, и вообще метод очень грубый. </ЦИТАТА>
Во первых ссылки не помирают, но если они зациклены - то это черевато зависанием. Если существует зацикленная структура данных - то грузите и сохраняйте отдельными функциями, яркий пример - стандартный TList. - Это все называется "Запись\Чтение композитных обьектов" - это когда внутри обьекта находятся другие обьекты. Смотрите []блин[/] сам модуль, и тогда все вопросы отпадут. Насчет 2-го... Ничего грубого в этом методе я не узрел. Большинство приложений пишут и грузят именно таким способом (смотри либу "universal save SDK"). Марк сделал аналог этой либы и назвал рефлекшн. =) |
Часовой пояс GMT +4, время: 11:36. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot