`
tomhibolu
  • 浏览: 1431196 次
文章分类
社区版块
存档分类
最新评论

QtScript 之Qt4.6前后变化小记(QTBUG5757)

 
阅读更多

今天看到CSDN中有网友抱怨,C++ GUI Qt4编程(第二版) 一书中的QtScript部分的例子不工作。

原因比较简单:书中代码测试所用的例子是Qt4.3,但QtScript在Qt4.6时采用JavaScriptCore进行了重写(原来的模块改名为QtScriptClassic放入Qt Solutions中)。

这样一来,QtScript更符合EMAC-262标准,但也对不少用户造成困扰。

对关注Qt4.6前后QtScript问题的用户,QTBUG-5757中的信息将非常有用。

我们简单看一下:

QScriptEngine engine;
engine.evaluate(XXXX);

中XXX的内容:

Qt4.5

Qt4.6

"function(){return 1+1;}"

"(function(){return 1+1;})"

"var f = function(){return 1+1;}"

"return 1+1;"

"1+1"

"{ \"foo\": 123 }"

"({ \"foo\": 123 })"

可使用内置的 JSON.parse

...

...

而且现在看来,在Qt5中,QtScript是不会采用V8重写了,将保持目前的状态。


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics