没有匹配的成员函数来调用“连接”-使用“ this”时

制成

我的程序运行正常,但我想向其中添加一个额外的信号以显示更新的值。这是信号实际上是第一次来自类本身,因此我决定使用,this如您所见。

该程序

和往常一样,在头文件中声明信号:

signals:
    void NotifyStatusUpdated(const QString& value);

private:

    SetupTab& m_setupTab;
    Instrument& m_instrument;

在.cpp文件中,最后构造的是信号:

WireMessages();
emit NotifyStatusUpdated(tr("Long wait time (Ms) updated : %1 ").arg(long_wait));

然后在下面我有这个:

void SetupViewManager::WireMessages()
{
    connect(&m_instrument, &Instrument::NotifyErrorDetected,
            &m_setupTab, &SetupTab::onStatusUpdated);       //this works
    connect(&m_instrument, &Instrument::NotifyStatusUpdated,
            &m_setupTab, &SetupTab::onStatusUpdated);       //this works
    connect(this, &Instrument::NotifyStatusUpdated,       //this does not work (it doesn't build)!
            &m_setupTab, &SetupTab::onStatusUpdated);
}

因此,在类参考中m_instrument,我有另一个具有相同名称的信号。因此,在这里我想从this类中调用信号

错误

error: no matching member function for call to 'connect'
        connect(this, &Instrument::NotifyStatusUpdated,
        ^~~~~~~

这对我来说似乎不合适吗?我犯了什么愚蠢的错误?

皮特·斯科特尼克(Piotr Skotnicki)

this指针是SetupViewManager在你的代码类:

connect(this, &SetupViewManager::NotifyStatusUpdated, ...
//             ^^^^^^^^^^^^^^^^

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Lambda时C ++没有匹配的函数调用进行转换

使用QVector时,没有对默认构造函数的匹配调用

C ++错误:使用argc,* argv []和多维数组调用void函数时,“没有匹配的函数要调用”

将类的成员函数传递给pthread_cleanup_push()时,没有匹配的函数调用

错误:“必须调用对非静态成员函数的引用”在使用类时没有得到解决

从向量中删除值时,没有匹配的成员函数可用于调用“擦除”

使用成员初始化器列表没有匹配的函数调用错误

没有匹配的函数来调用类中的成员函数

没有要调用的匹配函数:错误:必须使用'。*'或'-> *'来调用'f(...)'中的指针成员函数,例如'(...-> * f)( ...)'

“不是...的成员”和“没有匹配的函数来调用”错误

如何解决错误:在类中使用std :: bind时,“没有匹配的函数可用于对'bind(<unresolved的重载函数类型>的调用”

当 Shell 使用 Prism6 for WPF 关闭所有相关的 ViewModel 时,如何正确调用 Dispose 函数来清理资源?

使用 ResponseCode 时在 null 上调用成员函数 getInternalRequest()

使用存储库时,在null上调用成员函数createQueryBuilder()

使用外键时在 null 上调用成员函数 comments()

没有匹配的函数来调用“连接”(QT)

使用优式风格的组件时,没有重载匹配此调用

调用 subscript 时没有完全匹配,如果我使用 forEach,则不起作用

没有重载匹配这个调用。在 Typescript 中使用 Object reduce 回调时

没有匹配的调用函数,使用函数指针

编译器通过错误:尝试使用std :: pair向量时没有匹配函数

使用模板时:错误:没有匹配的构造函数用于初始化

使用 Root/C++ 时出错:“TTree”的初始化没有匹配的构造函数

在 C++ 中使用成员函数向量时,有没有办法实现协变返回类型?

JPA - 使用 varchar 调用 postgresql 函数时“没有 JDBC 类型的方言映射:1111”

为什么在使用unique_ptr时没有调用析构函数?

当我使用执行更新的调用函数时,记录没有更新

当不应该使用复制参数来调用已删除的构造函数时

有没有一种技术可以用来使用调用函数的参数来调用函数?