我创建了一个用于处理从插槽接收的数据的类,并创建了几个具有不同参数类型的同名重载方法。
是否可以将重载方法用作插槽?
到目前为止,我有两个声明:
void notify(uint uintData);
void notify(float fltData);
然而,第二个在运行时产生警告:
QObject::connect: No such slot clsSlot::notify(float)
发现这意味着它应该可以工作:http ://doc.qt.io/qt-5/signalsandslots.html
但它不...
从“clsSlot”类:
public slots:
void notify(uint uintValue);
void notify(float fltValue);
执行:
void clsSlot::notify(float fltValue) {
notifyPrimitive(meID, QString::number(fltValue));
}
void clsSlot::notify(uint uintValue) {
notifyPrimitive(meID, QString::number(uinValue));
}
连接呼叫:
QObject::connect(Fcs::Mount::GetRef()
,&Fcs::Mount::signalElevation
,pobjHandler, &clsSlot::notify);
pobjHandler 是一个指向 clsSlot 实例的指针。