Qt 连接槽函数时该函数存在函数重载怎么办

假如存在以下信号及成员函数

class Animal : public QObject
{
signals:
    void notify();

public slots:
    void run();
    void run(int seconds);
}

如果使用普通的connect函数去连接时会报错:

connect(this, &Animal::notify, this, &Animal::run);

原因是run函数存在函数重载,这个时候如果希望去连接特定的重载函数时应当使用静态转换强制指定连接某个槽函数.

connect(this, &Animal::notify, this, static_cast(&Animal::run));

这样就没问题了

你可能感兴趣的:(qt,c++,函数重载,槽函数)