(речь про с++ поэтому управление памятью тоже учитывается)
есть грубо говоря набор агентов, агентами может управлять юзер, в том числе делать операции в результате которых один агент ссылается на другого
в итоге может образоваться абсолютно случайный граф вплоть до наличия ссылок самого на себя, косвенных ссылок и т.п.
выследить , запретить подобные вещи и сложно и нельзя поэтому не вариант
в тоже этот создать легко и сохранить просто, но когда загружаешь,
вот тут начинается веселуха, если юзер намудрил не дерево, а граф, то очень вероятно что при загрузке создание одного объекта потребует себя же но уже созданного
как такое разрулить?
у меня есть хреновые идеи:
— сделать всё на сообщениях, узлы напрямую друг на друга не ссылаются вообще
— попробовать реализовать типа асинхронный лайф-сайкл так скзать, типа переделать все операции уставноки связи на асинхронные и меть центральный узел который будет все мониторить и откладывать установку свзяи когда нада и уведовлять о ее создани икогда она доступна (я бы попробовал но не могу в уме все проработать — все ли проблемы решаются таким образом? а переделка займет много времени)
— еще чтото не помню....
как нужно? среда — нативная так что, память нада освобождать прваильно
Я изъездил эту страну вдоль и поперек, общался с умнейшими людьми и я могу вам ручаться в том, что обработка данных является лишь причудой, мода на которую продержится не более года. (с) Эксперт, авторитет и профессионал из 1957 г.