连接不起作用

Connect does not work

在我的程序中,在连接到本地蓝牙地址期间,class QBluetoothSocket 发出信号 connected(),所以我在构造函数中捕获它并调用一个信息槽,它表示连接已建立。 但是不知道为什么,信息槽是看不见的。
希望通过代码更容易理解。

QBluetoothSocket socket;
connect(socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
void Widget::connected_to_local()
{
    qDebug()<<"Connected!"<<endl;
}

错误是:

C:\Qt_Projects\A_for_w8\A_for_w8\widget.cpp:19: error: no matching function for call to 'Widget::connect(QBluetoothSocket&, void (QBluetoothSocket::*)(), Widget*, void (Widget::*)())'
      connect(socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
                                                                                  ^

我泪流满面,但真的不知道为什么.. 希望你能帮忙。

你可以这样做:

QBluetoothSocket *socket = new QBluetoothSocket();
connect(socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
void Widget::connected_to_local()
{
    qDebug()<<"Connected!"<<endl;
}

或:

QBluetoothSocket socket;
connect(&socket,&QBluetoothSocket::connected,this,&Widget::connected_to_local)
void Widget::connected_to_local()
{
    qDebug()<<"Connected!"<<endl;
}

您可以找到更多信息on the docs