作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在编写一个 Qt 应用程序,将 C++ 类映射到 QtWebkit 中的 Javascript 对象。首先让我解释一下我想做什么:
我有一个继承自 QObject 的类:
class myobj : public QObject {
Q_OBJECT
public:
myobj();
~myobj();
pulbic slots:
void getData();
}
在另一个类中,我尝试将 myobj 实例添加到 QVariantMap:
QVariantMap anotherClass::getObj() {
myobj* obj1 = new myobj();
myobj* obj2 = new myobj();
QVariantMap items;
items.insert(QString("0"), QVariant(*obj1));
items.insert(QString("1"), QVariant(*obj2));
return items;
}
然后我得到以下错误:
error: no matching function for call to ‘QVariant::QVariant(myobj&)’
所以我尝试添加声明:
Q_DECLARE_METATYPE(myobj);
但是我得到了:
error: ‘QObject::QObject(const QObject&)’ is private
对此有什么想法吗?
最佳答案
正如编译器所说,不存在以 myobj
作为参数的 QVariant
构造函数。您是否尝试过使用 qVariantFromValue
函数代替?
我认为这就是您要搜索的内容。
关于javascript - Qt编程: How to use custom data type in QVariantMap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4303818/
我是一名优秀的程序员,十分优秀!