如何使 Qt 中的类既可编写脚本又可序列化?
Posted
技术标签:
【中文标题】如何使 Qt 中的类既可编写脚本又可序列化?【英文标题】:How to make a class in Qt both scriptable and serializable? 【发布时间】:2012-10-04 23:41:39 【问题描述】:我正在尝试编写一个具有两个基本特征的类:
它必须是可编写脚本的 - 该类包含许多用Q_INVOKABLE
修饰的属性和方法,这些属性和方法会暴露给脚本。
它需要是可序列化的,以便它可以注册到qRegisterMetaTypeStreamOperators()
以存储在QVariant
s中。
据我所知,我需要从QObject
派生以使该类可编写脚本。但是,为了向qRegisterMetaTypeStreamOperators()
注册类,该类似乎需要有一个默认的复制构造函数——这是QObject
派生类所不能具备的。
有没有办法实现这两个目标?
【问题讨论】:
【参考方案1】:您可以拥有不是从 QObject 派生的可编写脚本的对象,但它的工作量更大。已讨论here
【讨论】:
以上是关于如何使 Qt 中的类既可编写脚本又可序列化?的主要内容,如果未能解决你的问题,请参考以下文章