相对于QtScript,使用Lua与Qt的结合有多容易?

我刚开始使用Qt进行C++开发。然而,我也对使用Lua脚本编写应用程序感兴趣,因为有许多文章表明它在编写应用程序的工作流程、用户界面和脚本等方面的开发速度(容易性)方面很高效。然而,Qt并不支持Lua,而是包含了QtScript。

我的问题基本上是,我应该尝试将Lua与Qt一起使用以开发商业应用程序,还是使用SDK中提供的QtScript?主要是一个开发速度与稳定性的问题。

原文链接 https://stackoverflow.com/questions/3227608

点赞
stackoverflow用户22080
stackoverflow用户22080

JavaScript 目前已经相当好地集成了,如果您想要集成 Lua,可能需要更多的前期努力。而且当前实现版本(4.6)使用的是 webkit 的 JavaScript 引擎,这意味着它运行得飞快。

我在一个当前项目中使用了 JavaScriptQt,轻松地在两者间传输数据(从 QtJavaScript,以及反向传输)。

2010-07-12 14:52:22
stackoverflow用户1491
stackoverflow用户1491

我也遇到了同样的困境。对于这些任务,我更喜欢使用 Lua 而不是 ECMAScript。然而,尽管编写 Lua 绑定非常容易,但 QtScript 提供的集成级别使得开箱即用的功能非常强大。这包括绑定到内置的 QObject 派生类以及从 QObject 和 / 或 QScriptClass 派生的自定义类。

因此,如果您只想独立于 Qt 功能编写脚本或配置自己的类,则应选择 Lua。但是,如果您主要想与基于 QObject 的类型交互,则 QtScript 将大大减少您的初始开发时间。

最好的方法是使用替代的 QScriptEngine 实现解析 Lua 脚本的选项。我一直想查看将其整合起来有多困难...

更新QtLua 仍在积极维护,并且可以直接解决您的问题。

2010-07-12 14:55:14