草庐IT

QScriptValue

全部标签

c++ - QScriptValue 作为全局对象的深拷贝

我有一个使用QtScript实现某些自动化的程序。我在脚本引擎的全局范围内添加了一堆C++函数和类,以便脚本可以访问它们,如下所示:QScriptValuefun=engine->newFunction(systemFunc);engine->globalObject().setProperty("system",fun);我希望能够连续运行多个脚本,每个脚本都有一个新的全局状态。所以如果一个脚本设置了一个全局变量,比如myGlobalVar="stuff";我希望在下一个脚本运行之前删除该变量。我这样做的方法是对脚本引擎的全局对象进行深度复制,然后在脚本运行完毕后恢复它。但是深拷贝不