Название: Как правильно скопировать переменную из одной QScriptEngine в другую Отправлено: Sasha от Май 27, 2014, 17:14 Здравствуйте,
Основная задача - сделать разделяемую между двумя и более скриптами переменную Подробнее можно сказать так: 1) Есть 2 объекта класса QScriptEngine, т.е. 2 независимых скрипта 2) Каждому из них доступна ф-я, которая создаёт переменную по имени. Причём эта переменная создаётся только в том случае, если её ещё нет. Проверка осуществляется по имени. 3) Любой скрипт может менять переменную, причём, её новое значение, должен увидеть 2-й скрипт. Проблемная часть в коде выглядит так: Код Сам код работает без ошибок. Но когда один скрипт с его помощью установил значение переменной m_var, а другой её взял и пытается использовать, вот тут и начинаются проблеммы. В отладчике видно, что на некотором этапе происходит проверка, является ли переменная созданной в скрипте, если да, то является ли она принадлежащей данному скрипту и если нет то дальше работать нехотим и получите ASSERT. После долгих исканий я написал код при возврате в таком виде: Код И радовался, пока не попытался так передать массив (объект не пробовал, но думаю будет тоже самое). пока ещё долго отладчиком не ходил, но по аналогии думаю, что проблемма в том, что мой код более-менее нормально преобразовывает только верхушку иерархии, а внутренние объекты так и остаются пренадлежащими другому скрипту, что опять вызывает проблеммы. Неужели нужно всю иерархию вручную преобразовывать? Есть ли готовый способ нужного мне преобразования? |