C++ 为什么连接';s信号有参数,但插槽没有';你没有吗?
Qt 4.8.1,原始代码如下:C++ 为什么连接';s信号有参数,但插槽没有';你没有吗?,c++,qt,signals,signals-slots,slots,C++,Qt,Signals,Signals Slots,Slots,Qt 4.8.1,原始代码如下: connect(this->m_CodeMemoryComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(updateCodeMemoryFormate())); 这真的让我困惑,[问题]在使用QObject::connect时,我可以将参数传递给slot函数吗? 这告诉我参数应该是匹配的,但是这里发生的事情是,如果我删除该参数,代码将出错。描述了这一点。在“信号和插槽”标题下搜
connect(this->m_CodeMemoryComboBox, SIGNAL(currentIndexChanged(QString)),
this, SLOT(updateCodeMemoryFormate()));
这真的让我困惑,[问题]在使用QObject::connect时,我可以将参数传递给slot函数吗?
这告诉我参数应该是匹配的,但是这里发生的事情是,如果我删除该参数,代码将出错。描述了这一点。在“信号和插槽”标题下搜索“(实际上插槽的签名可能比它接收到的信号短,因为它可以忽略额外的参数)。”
基本上,如果M描述了这一点,您可以将N
参数信号连接到M
参数插槽。在“信号和插槽”标题下搜索“(实际上插槽的签名可能比它接收到的信号短,因为它可以忽略额外的参数)。”
基本上,如果M表示
信号和插槽机制是类型安全的:信号的签名必须与接收插槽的签名匹配。(事实上,插槽的签名可能比它接收到的信号短,因为它可以忽略额外的参数。)
信号和插槽机制是类型安全的:信号的签名必须与接收插槽的签名匹配。(事实上,插槽的签名可能比它接收到的信号短,因为它可以忽略额外的参数。)@benhuan,如果你有信号(a,b,c,d)
和插槽(a,b)
参数c
和d
。@benhuan,如果你有信号(a,b,c,d)
和插槽(a,b)
参数c
和d
将被忽略。