Qt信号和槽的参数类型

Qt信号和槽的参数类型

本文介绍了Qt信号和槽的参数类型,const引用限定符有问题吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

对于

signals:
    void textChanged(const QString &);

public slots:
    void setText(const QString & text)

textChanged和setText的参数类型似乎无法修改 const & 。与仅使用QString相比,常量和引用限定是否有什么区别?

the type of argument of textChanged and setText seems to work invarable of const and &. Does the constant and reference qualification make any difference compared to just using QString ?

QObject::connect(a,SIGNAL(textChanged(QString)),b,SLOT(setText(QString)));
QObject::connect(a,SIGNAL(textChanged(const QString &)),b,SLOT(setText(const QString &)));

编辑:
当没有不兼容类型时,我没有注意到显示错误消息的输出窗口用于SIGNAL或SLOT。我认为信号槽机制能够在编译时检测参数类型错误。

I did not notice the output window showing error messages when there is incompatible type being used in SIGNAL or SLOT. I thought the signal slot mechanism is capable of detecting argument type error at compile time.

推荐答案

Qt检查,意味着

这篇关于Qt信号和槽的参数类型,const引用限定符有问题吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-01 18:41