一个非常简单的问题。
QMap
不继承QObject
,所以我想知道是否有一种简便的Qt方法emit mySignal(MyEnum state)
。
如果您要问为什么我在调用函数QMap::insert(...)
时不仅仅在代码中发出信号,那是因为这是在模板中完成的...“”“”我认为“是不可能:
http://doc.qt.io/archives/qt-4.8/templates.html
如果有帮助,我正在使用的QMap
对象是全局对象,将在线程之间使用。
答案 0 :(得分:1)
很简单:
class MyMap : public QObject
{
Q_OBJECT;
public slots:
void insert(... key, ... value)
{
_map.insert(key, value);
emit isInserted(key);
}
signals:
void isInserted(... key);
private:
QMap<..., ...> _map;
}