crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

JohnZ
  опции профиля:
сообщение 19.5.2017, 13:05
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 139
Регистрация: 19.7.2014
Пользователь №: 4190

Спасибо сказали: 10 раз(а)




Репутация:   0  


В доке написано
Цитата
QScriptValue QScriptEngine::evaluate ( const QString & program, const QString & fileName = QString(), int lineNumber = 1 )
Evaluates program, using lineNumber as the base line number, and returns the result of the evaluation.
The script code will be evaluated in the current context.

Но в действительности получается что каждый evaluate создаёт свой контекст и ...
evaluate ("var x = 2");
evaluate ("var y = 3");
evaluate ("var z = x + y");

z не вычисляется, т.к. в его контексте нет x & y ?!
Это при условии что вызов evaluate происходит из _разных_ объектов, но по единому указателю QScriptEngine .

Вопрос - возможно-ли сохранить единый контекст для ВСЕХ evaluate ?
(до пере-инициализации QScriptEngine, ес-сно)

Заранее благодарен за помощь !
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
JohnZ
  опции профиля:
сообщение 14.6.2017, 12:32
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 139
Регистрация: 19.7.2014
Пользователь №: 4190

Спасибо сказали: 10 раз(а)




Репутация:   0  


Дык ясень-красень что evaluate возвращает QScriptValue, согласно докам, вопрос в другом,
откуда взят параметр вызова "TetrixWindow" и что обозначает ?

Что engine компилит ?

Ведь это-же НЕ скрипт !!! Тогда ЧТО ?

В проекте есть XML-ная UI форма с таким именем ! Не может-же engine компилить её ?! :blink:
Но судя по строке вызова, получается именно так :blink:

Сообщение отредактировал JohnZ - 14.6.2017, 12:39
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 2.6.2025, 4:03